
body.satlab-course-page{
  --bg:#07111f; --panel:#0d1b2d; --panel2:#11243b; --text:#e9f2ff; --muted:#9fb3ca;
  --line:#203a59; --accent:#37b7ff; --accent2:#5ee4b1; --warn:#ffcc66; --danger:#ff7a90;
  --shadow:0 12px 36px rgba(0,0,0,.28); --radius:18px; --max:1180px;
}
body.satlab-course-page .satlab-course *{box-sizing:border-box}
body.satlab-course-page{scroll-behavior:smooth}
body.satlab-course-page .satlab-course{margin:0;background:linear-gradient(180deg,#06101c 0%,#081522 100%);color:var(--text);font:16px/1.65 Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
body.satlab-course-page .satlab-course a{color:#72cfff;text-decoration:none}
body.satlab-course-page .satlab-course a:hover{text-decoration:underline}
body.satlab-course-page .satlab-course img,body.satlab-course-page .satlab-course svg{max-width:100%}
body.satlab-course-page .satlab-course code,body.satlab-course-page .satlab-course kbd{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}
body.satlab-course-page .satlab-course code{background:#081421;border:1px solid #1e3957;border-radius:7px;padding:.12rem .32rem}
body.satlab-course-page .satlab-course pre{background:#06101b;border:1px solid var(--line);border-radius:14px;padding:1rem;overflow:auto}
body.satlab-course-page .satlab-course table{width:100%;border-collapse:collapse;margin:1rem 0 1.5rem;font-size:.95rem}
body.satlab-course-page .satlab-course th,body.satlab-course-page .satlab-course td{padding:.72rem .8rem;border-bottom:1px solid var(--line);vertical-align:top}
body.satlab-course-page .satlab-course th{color:#dff4ff;background:#10243a;text-align:left;position:sticky;top:0}
body.satlab-course-page .satlab-course tr:hover td{background:rgba(55,183,255,.035)}
body.satlab-course-page .satlab-course .topbar{position:sticky;top:0;z-index:50;background:rgba(5,14,25,.93);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
body.satlab-course-page .satlab-course .topbar-inner{max-width:var(--max);margin:auto;display:flex;align-items:center;gap:1rem;padding:.75rem 1rem}
body.satlab-course-page .satlab-course .brand{font-weight:800;letter-spacing:.02em;color:white;white-space:nowrap}
body.satlab-course-page .satlab-course .brand small{display:block;font-weight:500;color:var(--muted);font-size:.72rem}
body.satlab-course-page .satlab-course .nav{display:flex;gap:.35rem;overflow:auto;margin-left:auto}
body.satlab-course-page .satlab-course .nav a,body.satlab-course-page .satlab-course .nav button{border:1px solid transparent;background:transparent;color:#c8d8e9;border-radius:10px;padding:.48rem .65rem;white-space:nowrap;cursor:pointer}
body.satlab-course-page .satlab-course .nav a:hover,body.satlab-course-page .satlab-course .nav button:hover{background:#10243a;text-decoration:none;border-color:#254766}
body.satlab-course-page .satlab-course .progress-shell{height:3px;background:#10243a}
body.satlab-course-page .satlab-course .progress-bar{height:3px;width:0;background:linear-gradient(90deg,var(--accent),var(--accent2));transition:width .25s}
body.satlab-course-page .satlab-course .wrap{max-width:var(--max);margin:auto;padding:2rem 1rem 5rem}
body.satlab-course-page .satlab-course .hero{background:
 radial-gradient(circle at 85% 10%,rgba(55,183,255,.2),transparent 34%),
 radial-gradient(circle at 15% 90%,rgba(94,228,177,.12),transparent 30%),
 #0b1b2d;border:1px solid var(--line);border-radius:26px;padding:clamp(1.5rem,4vw,3.3rem);box-shadow:var(--shadow);overflow:hidden}
body.satlab-course-page .satlab-course .hero h1{font-size:clamp(2rem,4.8vw,4.6rem);line-height:1.02;margin:.35rem 0 1rem;letter-spacing:-.04em}
body.satlab-course-page .satlab-course .hero p{max-width:820px;color:#c4d4e6;font-size:1.08rem}
body.satlab-course-page .satlab-course .eyebrow{display:inline-flex;gap:.5rem;align-items:center;color:#9bddff;text-transform:uppercase;letter-spacing:.14em;font-size:.75rem;font-weight:800}
body.satlab-course-page .satlab-course .chip{display:inline-flex;align-items:center;gap:.4rem;border:1px solid #2b4d70;background:#0d2238;border-radius:999px;padding:.28rem .62rem;color:#cde8fb;font-size:.82rem;margin:.15rem}
body.satlab-course-page .satlab-course .grid{display:grid;grid-template-columns:repeat(12,1fr);gap:1rem}
body.satlab-course-page .satlab-course .card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:1.2rem;box-shadow:0 8px 24px rgba(0,0,0,.16)}
body.satlab-course-page .satlab-course .card h3,body.satlab-course-page .satlab-course .card h2{margin-top:.2rem}
body.satlab-course-page .satlab-course .span-4{grid-column:span 4}body.satlab-course-page .satlab-course .span-6{grid-column:span 6}body.satlab-course-page .satlab-course .span-8{grid-column:span 8}body.satlab-course-page .satlab-course .span-12{grid-column:span 12}
body.satlab-course-page .satlab-course .chapter-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem}
body.satlab-course-page .satlab-course .chapter-card{display:block;background:#0d1c2e;border:1px solid var(--line);border-radius:16px;padding:1rem;color:inherit;min-height:190px;transition:.18s transform,.18s border-color}
body.satlab-course-page .satlab-course .chapter-card:hover{transform:translateY(-3px);border-color:#3f759e;text-decoration:none}
body.satlab-course-page .satlab-course .chapter-card .num{font-size:.78rem;color:#73d0ff;font-weight:800;letter-spacing:.09em}
body.satlab-course-page .satlab-course .chapter-card h3{line-height:1.22;margin:.35rem 0}
body.satlab-course-page .satlab-course .chapter-card p{color:var(--muted);font-size:.93rem}
body.satlab-course-page .satlab-course .done-badge{display:none;color:#9ff2cd;font-size:.78rem;font-weight:700}
body.satlab-course-page .satlab-course .chapter-card.done .done-badge{display:inline}
body.satlab-course-page .satlab-course .layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:2rem;align-items:start}
body.satlab-course-page .satlab-course .sidebar{position:sticky;top:84px;background:#0b1929;border:1px solid var(--line);border-radius:16px;padding:1rem;max-height:calc(100vh - 100px);overflow:auto}
body.satlab-course-page .satlab-course .sidebar h4{margin:.2rem 0 .7rem}
body.satlab-course-page .satlab-course .sidebar a{display:block;padding:.36rem .45rem;border-radius:8px;color:#b8cce0;font-size:.9rem}
body.satlab-course-page .satlab-course .sidebar a:hover{background:#10243a;text-decoration:none;color:white}
body.satlab-course-page .satlab-course .article{min-width:0}
body.satlab-course-page .satlab-course .article h1{font-size:clamp(2rem,4vw,3.5rem);line-height:1.08;letter-spacing:-.035em}
body.satlab-course-page .satlab-course .article h2{margin-top:2.7rem;padding-top:.4rem;border-top:1px solid var(--line);font-size:1.65rem}
body.satlab-course-page .satlab-course .article h3{margin-top:1.8rem;font-size:1.15rem;color:#dff4ff}
body.satlab-course-page .satlab-course .article p,body.satlab-course-page .satlab-course .article li{color:#c7d6e6}
body.satlab-course-page .satlab-course .article strong{color:#f1f7ff}
body.satlab-course-page .satlab-course .lead{font-size:1.13rem;color:#d7e5f4!important}
body.satlab-course-page .satlab-course .note,body.satlab-course-page .satlab-course .warning,body.satlab-course-page .satlab-course .tip,body.satlab-course-page .satlab-course .law,body.satlab-course-page .satlab-course .sourcebox{border-radius:14px;padding:1rem 1.1rem;margin:1.15rem 0;border:1px solid}
body.satlab-course-page .satlab-course .note{background:#0c2136;border-color:#26557a}
body.satlab-course-page .satlab-course .tip{background:#0c2825;border-color:#2a6b5e}
body.satlab-course-page .satlab-course .warning{background:#2a2214;border-color:#725624}
body.satlab-course-page .satlab-course .law{background:#1b2036;border-color:#434f87}
body.satlab-course-page .satlab-course .sourcebox{background:#0a1724;border-color:#233d59;color:#a8bdd1}
body.satlab-course-page .satlab-course .sourcebox ul{margin:.5rem 0}
body.satlab-course-page .satlab-course .kpi{font-size:1.8rem;font-weight:850;color:white;line-height:1.1}
body.satlab-course-page .satlab-course .kpi-label{color:var(--muted);font-size:.85rem}
body.satlab-course-page .satlab-course .diagram{background:#081624;border:1px solid var(--line);border-radius:18px;padding:1rem;margin:1.25rem 0;overflow:auto}
body.satlab-course-page .satlab-course .diagram figcaption{color:#9fb4c9;font-size:.85rem;margin-top:.6rem}
body.satlab-course-page .satlab-course .formula{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;background:#07121e;border:1px dashed #315a7f;border-radius:12px;padding:1rem;margin:1rem 0;color:#e8f7ff;overflow:auto}
body.satlab-course-page .satlab-course .steps{counter-reset:step;list-style:none;padding:0}
body.satlab-course-page .satlab-course .steps li{counter-increment:step;position:relative;padding:.8rem .8rem .8rem 3.2rem;margin:.5rem 0;background:#0b1a2a;border:1px solid #1f3a56;border-radius:12px}
body.satlab-course-page .satlab-course .steps li:before{content:counter(step);position:absolute;left:.75rem;top:.72rem;width:1.8rem;height:1.8rem;border-radius:50%;display:grid;place-items:center;background:#183d5c;color:#aee1ff;font-weight:800}
body.satlab-course-page .satlab-course .checklist{list-style:none;padding:0}
body.satlab-course-page .satlab-course .checklist li{padding:.42rem 0 .42rem 1.7rem;position:relative}
body.satlab-course-page .satlab-course .checklist li:before{content:"□";position:absolute;left:0;color:#68d5ff;font-weight:900}
body.satlab-course-page .satlab-course .pill-row{display:flex;gap:.45rem;flex-wrap:wrap;margin:.7rem 0}
body.satlab-course-page .satlab-course .pager{display:flex;justify-content:space-between;gap:1rem;margin-top:3rem;padding-top:1.5rem;border-top:1px solid var(--line)}
body.satlab-course-page .satlab-course .pager a{flex:1;border:1px solid var(--line);background:#0b1a2a;border-radius:14px;padding:1rem}
body.satlab-course-page .satlab-course .pager a:last-child{text-align:right}
body.satlab-course-page .satlab-course .complete-btn{border:1px solid #2d7a64;background:#0b332b;color:#baf7df;border-radius:12px;padding:.7rem 1rem;font-weight:800;cursor:pointer}
body.satlab-course-page .satlab-course .complete-btn.done{background:#184a3e}
body.satlab-course-page .satlab-course .footer{border-top:1px solid var(--line);color:#8098b1;padding:2rem 1rem 4rem;text-align:center}
body.satlab-course-page .satlab-course .toolbar{display:flex;gap:.6rem;flex-wrap:wrap;margin:1rem 0}
body.satlab-course-page .satlab-course .btn{display:inline-block;border:1px solid #315b80;background:#0f2b46;color:#d9efff;border-radius:11px;padding:.62rem .85rem;font-weight:700}
body.satlab-course-page .satlab-course .btn:hover{text-decoration:none;background:#153955}
body.satlab-course-page .satlab-course .btn.green{border-color:#2d705d;background:#11342c;color:#ccf8e7}
body.satlab-course-page .satlab-course input,body.satlab-course-page .satlab-course select{width:100%;background:#071421;color:white;border:1px solid #2b4d6b;border-radius:10px;padding:.68rem}
body.satlab-course-page .satlab-course label{display:block;color:#b9cbdd;font-size:.9rem;margin:.55rem 0 .25rem}
body.satlab-course-page .satlab-course .calc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}
body.satlab-course-page .satlab-course .result{background:#07131f;border:1px solid #244966;border-radius:12px;padding:.9rem;margin-top:.8rem;min-height:58px}
body.satlab-course-page .satlab-course details{background:#0b1929;border:1px solid var(--line);border-radius:12px;padding:.75rem 1rem;margin:.6rem 0}
body.satlab-course-page .satlab-course summary{cursor:pointer;font-weight:800;color:#dff2ff}
body.satlab-course-page .satlab-course .glossary dt{font-weight:850;color:#e8f6ff;margin-top:1rem}
body.satlab-course-page .satlab-course .glossary dd{margin-left:0;color:#aebfd1}
body.satlab-course-page .satlab-course .search{max-width:620px}
body.satlab-course-page .satlab-course .search input{font-size:1rem}
@media (max-width:900px){
  body.satlab-course-page .satlab-course .layout{grid-template-columns:1fr}body.satlab-course-page .satlab-course .sidebar{position:relative;top:0;max-height:none}
  body.satlab-course-page .satlab-course .span-4,body.satlab-course-page .satlab-course .span-6,body.satlab-course-page .satlab-course .span-8{grid-column:span 12}
}
@media (max-width:640px){
  body.satlab-course-page .satlab-course .wrap{padding-top:1rem}body.satlab-course-page .satlab-course .hero{border-radius:18px}body.satlab-course-page .satlab-course .topbar-inner{align-items:flex-start;flex-wrap:wrap}
  body.satlab-course-page .satlab-course .nav{width:100%;margin-left:0}body.satlab-course-page .satlab-course .article h1{font-size:2.1rem}
  body.satlab-course-page .satlab-course table{font-size:.84rem}body.satlab-course-page .satlab-course .pager{flex-direction:column}body.satlab-course-page .satlab-course .pager a:last-child{text-align:left}
}
@media print{
  body.satlab-course-page .satlab-course .topbar,body.satlab-course-page .satlab-course .sidebar,body.satlab-course-page .satlab-course .pager,body.satlab-course-page .satlab-course .complete-btn,body.satlab-course-page .satlab-course .footer,body.satlab-course-page .satlab-course .toolbar{display:none!important}
  body.satlab-course-page .satlab-course{background:white;color:black;font:11pt/1.45 Georgia,serif}
  body.satlab-course-page .satlab-course .wrap{max-width:none;padding:0}body.satlab-course-page .satlab-course .layout{display:block}body.satlab-course-page .satlab-course .article p,body.satlab-course-page .satlab-course .article li{color:#111}
  body.satlab-course-page .satlab-course .article h1,body.satlab-course-page .satlab-course .article h2,body.satlab-course-page .satlab-course .article h3,body.satlab-course-page .satlab-course strong{color:#000!important}
  body.satlab-course-page .satlab-course .card,body.satlab-course-page .satlab-course .diagram,body.satlab-course-page .satlab-course .note,body.satlab-course-page .satlab-course .tip,body.satlab-course-page .satlab-course .warning,body.satlab-course-page .satlab-course .law,body.satlab-course-page .satlab-course .sourcebox{box-shadow:none;background:#fff!important;border:1px solid #aaa;break-inside:avoid}
  body.satlab-course-page .satlab-course a{color:#000;text-decoration:underline}
}

body.satlab-course-page{margin:0;background:linear-gradient(180deg,#06101c 0%,#081522 100%)!important;color:var(--text)}
body.satlab-course-page .satlab-course{min-height:70vh}
body.satlab-course-page .satlab-topbar{top:var(--wp-admin--admin-bar--height,0px)}
body.admin-bar.satlab-course-page .satlab-topbar{top:32px}
body.satlab-course-page .satlab-sync-note{font-size:.82rem;color:var(--muted);margin:.55rem 0 0}
body.satlab-course-page .satlab-progress-actions{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center;margin:.75rem 0}
body.satlab-course-page .satlab-reset-btn{border:1px solid #5b3c48;background:#27151d;color:#ffc8d2;border-radius:10px;padding:.52rem .72rem;cursor:pointer}
body.satlab-course-page .satlab-account-badge{display:inline-flex;align-items:center;border:1px solid #2d705d;background:#11342c;color:#ccf8e7;border-radius:999px;padding:.24rem .55rem;font-size:.78rem;font-weight:700}
body.satlab-course-page .satlab-local-badge{display:inline-flex;align-items:center;border:1px solid #315b80;background:#0f2b46;color:#d9efff;border-radius:999px;padding:.24rem .55rem;font-size:.78rem;font-weight:700}
body.satlab-course-page .satlab-course main{display:block}
body.satlab-course-page .satlab-empty{padding:2rem;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius)}
@media(max-width:782px){body.admin-bar.satlab-course-page .satlab-topbar{top:46px}}
