/* Site-Shot 2026 design language — namespaced under .theme-2026 (blog pilot). */
:root {
  --ss-bg:#FFFFFF; --ss-surface:#FFFFFF; --ss-surface-alt:#F6F7F9; --ss-page:#EBEEF3;
  --ss-text:#0E1116; --ss-text-2:#454E5E; --ss-text-3:#69727F;
  --ss-border:#DBDFE6; --ss-border-strong:#C6CCD6; --ss-chrome:#FBFBFC;
  --ss-accent:#E2452F; --ss-accent-hover:#C93D29; --ss-middot:#C9CDD6;
  --ss-error:#D92D20; --ss-error-bg:#FEF3F2; --ss-error-border:#F4C7C0; --ss-error-text:#912018;
  --ss-r-card:14px; --ss-r-frame:9px; --ss-r-btn:8px; --ss-r-pill:999px;
  --ss-shadow:0 1px 2px rgba(16,24,40,.07),0 12px 30px rgba(16,24,40,.13);
  --ss-shadow-nav:0 1px 3px rgba(15,17,21,.05);
  --ss-mono:ui-monospace,SFMono-Regular,Menlo,monospace;
}
.theme-2026{
  background:var(--ss-page); color:var(--ss-text);
  font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
  font-optical-sizing:auto; font-feature-settings:'cv05','ss01';
  -webkit-font-smoothing:antialiased; line-height:1.6;
}
.theme-2026 *{box-sizing:border-box;}
.theme-2026 a{color:inherit; text-decoration:none;}
.theme-2026 img{max-width:100%; display:block;}
.theme-2026 .ss-wrap{max-width:760px; margin:0 auto; padding:0 24px;}
.theme-2026 .ss-bleed{max-width:1080px; margin:0 auto; padding:0 32px;}
.theme-2026 .ss-mono{font-family:var(--ss-mono); font-variant-numeric:tabular-nums;}
.theme-2026 .ss-hr{border:0; border-top:1px solid var(--ss-border); margin:0; max-width:none;}
.theme-2026 .ss-kicker{font-family:var(--ss-mono); font-size:12px; font-weight:600;
  letter-spacing:.08em; text-transform:uppercase; color:var(--ss-accent);}
.theme-2026 .ss-meta{font-family:var(--ss-mono); font-size:12.5px; font-weight:500;
  color:var(--ss-text-2); font-variant-numeric:tabular-nums; margin:0;}
.theme-2026 .ss-meta .dot{color:var(--ss-middot); margin:0 6px;}
.theme-2026 .ss-read{font-size:14px; font-weight:600; color:var(--ss-accent);}
.theme-2026 .ss-read .arrow{display:inline-block; transition:transform .14s ease;}
/* Buttons */
.theme-2026 .ss-btn{display:inline-flex; align-items:center; gap:6px; background:var(--ss-accent);
  color:#fff; font-size:13px; font-weight:600; padding:8px 15px; border-radius:var(--ss-r-btn);
  border:0; white-space:nowrap; transition:background .12s ease,transform .12s ease;}
.theme-2026 .ss-btn:hover{background:var(--ss-accent-hover); transform:translateY(-1px);}
.theme-2026 .ss-btn-ghost{background:transparent; color:var(--ss-text-2);}
.theme-2026 .ss-btn-ghost:hover{background:transparent; color:var(--ss-text); transform:none;}
.theme-2026 a:focus-visible{outline:2px solid var(--ss-accent); outline-offset:2px; border-radius:3px;}
.theme-2026 .ss-btn:focus-visible{outline:2px solid var(--ss-accent); outline-offset:2px; border-radius:var(--ss-r-btn);}
@media (prefers-reduced-motion: reduce){
  .theme-2026 *{transition:none !important;}
}
.theme-2026 .ss-nav{position:sticky; top:0; z-index:50; background:var(--ss-bg);
  border-bottom:1px solid var(--ss-border); transition:transform .25s ease, background .2s ease, box-shadow .2s ease;}
.theme-2026 .ss-nav.is-hidden{transform:translateY(-100%);}
.theme-2026 .ss-nav.is-scrolled{background:rgba(255,255,255,.82);
  backdrop-filter:blur(12px); box-shadow:var(--ss-shadow-nav);}
.theme-2026 .ss-nav__inner{min-height:60px; display:flex; align-items:center; gap:32px;}
.theme-2026 .ss-nav__brand{display:flex; align-items:center; gap:8px; flex-shrink:0;}
.theme-2026 .ss-nav__glyph{width:24px; height:24px; border-radius:7px; background:var(--ss-accent);
  display:inline-flex; align-items:center; justify-content:center;}
.theme-2026 .ss-nav__word{font-size:16px; font-weight:600; letter-spacing:-.01em; white-space:nowrap;}
.theme-2026 .ss-nav__links{display:flex; gap:18px;}
.theme-2026 .ss-nav__links a{font-size:13.5px; color:var(--ss-text-2); padding:19px 0;}
.theme-2026 .ss-nav__links a:hover{color:var(--ss-text);}
.theme-2026 .ss-nav__links a.is-active{color:var(--ss-text); font-weight:600;
  box-shadow:inset 0 -2px 0 var(--ss-accent);}
.theme-2026 .ss-nav__actions{margin-left:auto; display:flex; align-items:center; gap:16px;}
.theme-2026 .ss-nav__signin{font-size:13.5px; color:var(--ss-text-2); white-space:nowrap;}
.theme-2026 .ss-nav__signin:hover{color:var(--ss-text);}
@media (max-width:640px){
  .theme-2026 .ss-nav__links{display:none;}
  /* compact, wrap-friendly nav so large font-scaling / zoom doesn't break it */
  .theme-2026 .ss-nav__inner{gap:10px 12px; flex-wrap:wrap; padding-top:8px; padding-bottom:8px;
    padding-left:16px; padding-right:16px;}
  .theme-2026 .ss-nav__actions{gap:12px;}
  .theme-2026 .ss-nav .ss-btn{padding:7px 12px;}
}
.theme-2026 .ss-footer{background:#EDEFF3; border-top:1px solid var(--ss-border-strong);
  padding:64px 0 40px; margin-top:72px;}
.theme-2026 .ss-footer__lede{font-size:28px; font-weight:600; letter-spacing:-.025em; line-height:1.18;
  margin:8px 0 4px;}
.theme-2026 .ss-footer__sub{font-size:15px; color:var(--ss-text-2); margin:0 0 16px;}
.theme-2026 .ss-footer__cta{display:flex; align-items:center; gap:16px; margin-bottom:24px;}
/* balanced two-column footer: brand+CTA left, link columns right, rule+copy full-width below */
.theme-2026 .ss-footer__top{display:flex; justify-content:space-between; align-items:center; gap:40px 64px; flex-wrap:wrap;}
.theme-2026 .ss-footer__brand{max-width:400px;}
.theme-2026 .ss-footer__cols{display:grid; grid-template-columns:repeat(3,auto); gap:24px 56px; margin:0;}
@media (max-width:560px){ .theme-2026 .ss-footer__cols{grid-template-columns:1fr 1fr; gap:24px 40px;} }
.theme-2026 .ss-footer__h{font-family:var(--ss-mono); font-size:12px; font-weight:600;
  letter-spacing:.06em; text-transform:uppercase; color:var(--ss-text); margin:0 0 9px;}
.theme-2026 .ss-footer__cols a{display:block; font-size:13px; color:var(--ss-text); margin-bottom:6px;}
.theme-2026 .ss-footer__cols a:hover{color:var(--ss-accent);}
.theme-2026 .ss-footer__copy{font-size:12.5px; color:var(--ss-text); font-weight:500; margin:0;}
/* Hero */
.theme-2026 h1,.theme-2026 h2,.theme-2026 h3,.theme-2026 h4,.theme-2026 h5,.theme-2026 h6{
  font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;}
.theme-2026 .ss-hero{padding-top:56px;}
.theme-2026 .ss-hero__eyebrow{display:inline-flex; align-items:center; gap:8px;}
.theme-2026 .ss-hero__eyebrow .dot{width:6px; height:6px; border-radius:50%; background:var(--ss-accent);}
.theme-2026 .ss-hero__eyebrow .ss-mono{font-size:11px; font-weight:600; letter-spacing:.08em;
  text-transform:uppercase; color:var(--ss-accent);}
.theme-2026 .ss-hero__h1{font-size:42px; font-weight:600; letter-spacing:-.03em; line-height:1.08;
  margin:16px 0 12px; max-width:20ch;}
.theme-2026 .ss-hero__lead{font-size:17px; line-height:1.6; letter-spacing:-.005em;
  color:var(--ss-text-2); max-width:60ch; margin:0;}
.theme-2026 .ss-hero__cta{display:flex; flex-wrap:wrap; align-items:center; gap:16px; margin-top:26px;}
.theme-2026 .ss-section-label{font-size:12px; font-weight:600; letter-spacing:.08em;
  text-transform:uppercase; color:var(--ss-accent); margin:40px 0 10px;}

/* Screenshot frame */
.theme-2026 .ss-frame{display:block; border:1px solid var(--ss-border); border-radius:var(--ss-r-frame);
  overflow:hidden; background:#fff;}
.theme-2026 .ss-frame__bar{position:relative; height:32px; background:var(--ss-chrome);
  border-bottom:1px solid var(--ss-border); display:flex; align-items:center; padding:0 12px;}
.theme-2026 .ss-frame--sm .ss-frame__bar{height:24px;}
.theme-2026 .ss-dots{display:inline-flex; gap:5px;}
.theme-2026 .ss-dots i{width:7px; height:7px; border-radius:50%; background:var(--ss-border-strong);}
.theme-2026 .ss-frame--sm .ss-dots i{width:6px; height:6px;}
.theme-2026 .ss-frame__url{position:absolute; left:50%; transform:translateX(-50%); background:#fff;
  border:1px solid var(--ss-border); border-radius:var(--ss-r-pill); padding:2px 10px;
  font-size:11px; color:var(--ss-text-3);}
.theme-2026 .ss-frame__img{width:100%; aspect-ratio:16/10; object-fit:cover; object-position:top;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.6);}

/* Featured */
.theme-2026 .ss-featured-wrap{padding-top:40px;}
.theme-2026 .ss-featured{display:block; background:var(--ss-surface); border:1px solid var(--ss-border-strong);
  border-radius:var(--ss-r-card); overflow:hidden; box-shadow:0 1px 3px rgba(16,24,40,.06),0 18px 44px rgba(16,24,40,.13);
  transition:box-shadow .16s ease,border-color .16s ease,transform .16s ease;}
.theme-2026 .ss-featured .ss-frame{border:0; border-radius:0; border-bottom:1px solid var(--ss-border);}
.theme-2026 .ss-featured:hover{box-shadow:0 2px 8px rgba(15,17,21,.06),0 18px 44px rgba(15,17,21,.10);
  border-color:var(--ss-border-strong); transform:translateY(-2px);}
.theme-2026 .ss-featured:hover .ss-read .arrow{transform:translateX(3px);}
.theme-2026 .ss-featured__body{padding:28px 30px 30px;}
.theme-2026 .ss-featured__title{font-size:31px; font-weight:600; letter-spacing:-.022em;
  line-height:1.16; margin:10px 0 9px;}
.theme-2026 .ss-featured__sum{font-size:15px; line-height:1.6; color:var(--ss-text-2);
  max-width:64ch; margin:0 0 12px;}

/* Divider list rows */
.theme-2026 .ss-row{display:grid; grid-template-columns:184px 1fr; gap:20px; padding:20px 22px;
  margin-bottom:14px; background:var(--ss-surface); border:1px solid var(--ss-border-strong);
  border-radius:var(--ss-r-card); box-shadow:0 1px 2px rgba(16,24,40,.05),0 10px 26px rgba(16,24,40,.09); align-items:start;}
.theme-2026 .ss-row--text{grid-template-columns:1fr;}
.theme-2026 .ss-row{transition:box-shadow .16s ease,border-color .16s ease,transform .16s ease;}
.theme-2026 .ss-row:hover{border-color:var(--ss-border-strong); box-shadow:0 2px 8px rgba(15,17,21,.06),0 18px 44px rgba(15,17,21,.10); transform:translateY(-2px);}
.theme-2026 .ss-row .ss-frame{transition:box-shadow .14s ease,border-color .14s ease;}
.theme-2026 .ss-row:hover .ss-frame{box-shadow:var(--ss-shadow); border-color:var(--ss-border-strong);}
.theme-2026 .ss-row:hover .ss-row__title{color:#000;}
.theme-2026 .ss-row:hover .ss-read .arrow{transform:translateX(3px);}
.theme-2026 .ss-row__body{min-width:0; display:flex; flex-direction:column;}
.theme-2026 .ss-row__title{font-size:19px; font-weight:600; letter-spacing:-.01em; line-height:1.32;
  margin:6px 0 5px;}
.theme-2026 .ss-row__sum{font-size:14px; line-height:1.55; color:var(--ss-text-2); margin:0 0 8px;
  display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden;}
@media (max-width:640px){
  .theme-2026 .ss-row{grid-template-columns:1fr;}
  .theme-2026 .ss-hero__h1{font-size:32px;}
  .theme-2026 .ss-featured__title{font-size:22px;}
}
/* Article */
.theme-2026 .ss-article__title{font-size:38px; font-weight:600; letter-spacing:-.03em;
  line-height:1.1; margin:12px 0 24px; max-width:20ch;}
.theme-2026 .ss-article__body{font-size:17px; line-height:1.75; color:var(--ss-text);}
.theme-2026 .ss-article__body h1{font-size:36px; font-weight:600; letter-spacing:-.028em;
  line-height:1.12; margin:0 0 .35em;}
.theme-2026 .ss-article__body p{margin:0 0 1.2em; font-size:inherit; line-height:inherit;}
.theme-2026 .ss-article__body h2{font-size:26px; font-weight:600; letter-spacing:-.02em; margin:1.6em 0 .5em; position:relative; padding-left:14px; border-top:1px solid var(--ss-border); padding-top:1.1em; margin-top:2.2em;}
.theme-2026 .ss-article__body h2::before{content:''; position:absolute; left:0; top:.18em; bottom:.18em; width:4px; border-radius:2px; background:var(--ss-accent);}
.theme-2026 .ss-article__body > p:first-of-type{font-size:19px; line-height:1.7; color:var(--ss-text-2);}
.theme-2026 .ss-article__body h3{font-size:20px; font-weight:600; margin:1.4em 0 .4em;}
.theme-2026 .ss-article__body a{color:var(--ss-accent); text-decoration:underline;}
.theme-2026 .ss-article__body img{border:1px solid var(--ss-border); border-radius:var(--ss-r-frame); margin:1.2em 0;}
.theme-2026 .ss-article__body pre{background:var(--ss-surface-alt); border:1px solid var(--ss-border);
  border-radius:var(--ss-r-frame); padding:16px; overflow:auto; font-family:var(--ss-mono); font-size:13.5px;}
.theme-2026 .ss-article__body .codehilite{background:transparent; border:0; padding:0;}
.theme-2026 .ss-article__body code{font-family:var(--ss-mono); font-size:.92em;}
.theme-2026 .ss-article__body :not(pre) > code{background:var(--ss-surface-alt);
  border:1px solid var(--ss-border); border-radius:5px; padding:.1em .4em; color:var(--ss-text);}
.theme-2026 .ss-article__body ul,.theme-2026 .ss-article__body ol{margin:0 0 1.2em; padding-left:1.5em;}
.theme-2026 .ss-article__body li+li{margin-top:.35em;}
.theme-2026 .ss-article__body blockquote{margin:1.4em 0; background:var(--ss-surface-alt);
  border:1px solid var(--ss-border); border-left:3px solid var(--ss-accent);
  border-radius:var(--ss-r-frame); padding:14px 18px; color:var(--ss-text-2);}
.theme-2026 .ss-article__body table{width:100%; border-collapse:collapse; margin:1.4em 0; font-size:15px; border:1px solid var(--ss-border-strong); border-radius:var(--ss-r-frame); overflow:hidden; box-shadow:var(--ss-shadow);}
.theme-2026 .ss-article__body th,.theme-2026 .ss-article__body td{padding:.6em .85em;
  border-bottom:1px solid var(--ss-border-strong); text-align:left;}
.theme-2026 .ss-article__body th{background:#E7EBF1; text-transform:uppercase; letter-spacing:.04em; font-size:12px; color:var(--ss-text); font-weight:700; border-bottom:1px solid var(--ss-border-strong);}
.theme-2026 .ss-article__body tbody tr:nth-child(even){background:#F4F6F9;}
.theme-2026 .ss-article__body strong{font-weight:650; color:var(--ss-text);}
.theme-2026 .ss-article__body li::marker{color:var(--ss-accent);}
.theme-2026 .ss-article{padding-top:40px; border-top:3px solid var(--ss-accent);}
.theme-2026 .ss-article__back{margin-top:40px;}
@media (max-width:640px){
  .theme-2026 .ss-article__title{font-size:28px;}
}

/* ============================================================================
   Shared primitives for the site-wide migration (Phase 0).
   All namespaced under .theme-2026 → inert on any page that hasn't opted in.
   ========================================================================= */

/* Account menu (authenticated nav dropdown, ported from the dark _menu.html) */
.theme-2026 .ss-nav__account{position:relative;}
.theme-2026 .ss-nav__account-toggle{display:inline-flex; align-items:center; gap:5px;
  background:transparent; border:0; cursor:pointer; font:inherit; font-size:13.5px;
  color:var(--ss-text-2); padding:6px 4px;}
.theme-2026 .ss-nav__account-toggle:hover{color:var(--ss-text);}
.theme-2026 .ss-nav__account-toggle:focus-visible{outline:2px solid var(--ss-accent);
  outline-offset:2px; border-radius:6px;}
.theme-2026 .ss-nav__chevron{transition:transform .14s ease;}
.theme-2026 .ss-nav__account.is-open .ss-nav__chevron{transform:rotate(180deg);}
.theme-2026 .ss-nav__menu{position:absolute; top:calc(100% + 8px); right:0; min-width:188px;
  background:var(--ss-surface); border:1px solid var(--ss-border); border-radius:var(--ss-r-btn);
  box-shadow:var(--ss-shadow); padding:6px; display:none; flex-direction:column; z-index:60;}
.theme-2026 .ss-nav__account.is-open .ss-nav__menu{display:flex;}
.theme-2026 .ss-nav__menu-item{display:block; width:100%; text-align:left; background:transparent;
  border:0; cursor:pointer; font:inherit; font-size:13.5px; color:var(--ss-text-2);
  padding:8px 10px; border-radius:6px;}
.theme-2026 .ss-nav__menu-item:hover{background:var(--ss-surface-alt); color:var(--ss-text);}
.theme-2026 .ss-nav__menu-item:focus-visible{outline:2px solid var(--ss-accent); outline-offset:-2px;}
.theme-2026 .ss-nav__logout{margin:0;}

/* Forms — site-shot-2026 input layer (theme-2026 ships no Bootstrap form styling) */
.theme-2026 .ss-field{display:block; margin:0 0 18px;}
.theme-2026 .ss-label{display:block; font-size:13px; font-weight:600; color:var(--ss-text);
  margin:0 0 6px;}
.theme-2026 .ss-input,
.theme-2026 .ss-select,
.theme-2026 .ss-textarea{display:block; width:100%; font:inherit; font-size:15px; color:var(--ss-text);
  background:var(--ss-surface); border:1px solid var(--ss-border-strong); border-radius:var(--ss-r-btn);
  padding:10px 12px; transition:border-color .12s ease, box-shadow .12s ease;}
.theme-2026 .ss-textarea{min-height:120px; resize:vertical;}
.theme-2026 .ss-input:focus,
.theme-2026 .ss-select:focus,
.theme-2026 .ss-textarea:focus{outline:none; border-color:var(--ss-accent);
  box-shadow:0 0 0 3px rgba(226,69,47,.14);}
.theme-2026 .ss-input::placeholder,
.theme-2026 .ss-textarea::placeholder{color:var(--ss-text-3);}
.theme-2026 .ss-help{font-size:12.5px; color:var(--ss-text-3); margin:6px 0 0;}
.theme-2026 .ss-error,
.theme-2026 .ss-field .errorlist{color:var(--ss-error); font-size:13px; margin:6px 0 0; padding:0;
  list-style:none;}
.theme-2026 .ss-alert{border:1px solid var(--ss-border-strong); border-left:3px solid var(--ss-accent);
  border-radius:var(--ss-r-btn); padding:13px 16px; font-size:14px; margin:0 0 18px; background:var(--ss-surface);
  box-shadow:0 1px 2px rgba(16,24,40,.06),0 8px 22px rgba(16,24,40,.08);}
.theme-2026 .ss-alert--error{background:var(--ss-error-bg); border-color:var(--ss-error-border); color:var(--ss-error-text);}
.theme-2026 .ss-form{max-width:420px;}
.theme-2026 .ss-form-actions{display:flex; align-items:center; gap:14px; margin-top:4px;}
.theme-2026 .ss-btn--block{width:100%; justify-content:center; padding:11px 16px; font-size:14px;}

/* Data tables (theme-2026 only styled blog-prose tables before) */
.theme-2026 .ss-table{width:100%; border-collapse:collapse; font-size:14px; color:var(--ss-text);
  background:var(--ss-surface);}
.theme-2026 .ss-table th,
.theme-2026 .ss-table td{padding:11px 14px; text-align:left; border-bottom:1px solid var(--ss-border);
  vertical-align:middle;}
.theme-2026 .ss-table thead th{background:#EEF1F5; font-size:12px; font-weight:700;
  letter-spacing:.04em; text-transform:uppercase; color:var(--ss-text); white-space:nowrap;
  border-bottom:1px solid var(--ss-border-strong); position:static;}
.theme-2026 .ss-table--sticky thead th{position:sticky; top:60px; z-index:1;}
.theme-2026 .ss-table tbody td{color:var(--ss-text);}
.theme-2026 .ss-table tbody tr:nth-child(even){background:var(--ss-surface-alt);}
.theme-2026 .ss-table tbody tr:last-child td{border-bottom:0;}
.theme-2026 .ss-table tbody tr:hover{background:#F1F4F8;}
.theme-2026 .ss-table .ss-num,
.theme-2026 .ss-table .ss-mono{font-variant-numeric:tabular-nums;}
.theme-2026 .ss-table a{color:var(--ss-accent); font-weight:600; text-decoration:none;}
.theme-2026 .ss-table a:hover{text-decoration:underline;}
.theme-2026 .ss-table code{font-family:var(--ss-mono); font-size:.92em; color:var(--ss-text); background:var(--ss-surface-alt); border:1px solid var(--ss-border); border-radius:5px; padding:.08em .4em;}
.theme-2026 .ss-table td.ss-num:first-child code, .theme-2026 .ss-table td.ss-num:first-of-type{color:var(--ss-accent);}
.theme-2026 .ss-table-wrap{overflow-x:auto; -webkit-overflow-scrolling:touch; border:1px solid var(--ss-border-strong); border-radius:var(--ss-r-frame); overflow:hidden; box-shadow:var(--ss-shadow); margin:22px 0 8px;}

/* Pagination (replaces the three log pages' inline dark #2C3E50 overrides) */
.theme-2026 .ss-pagination{display:flex; flex-wrap:wrap; gap:6px; list-style:none; padding:0;
  margin:28px 0 0; justify-content:center;}
.theme-2026 .ss-pagination .page-item .page-link,
.theme-2026 .ss-pagination a,
.theme-2026 .ss-pagination span{display:inline-flex; align-items:center; justify-content:center;
  min-width:34px; height:34px; padding:0 10px; font-size:13.5px; color:var(--ss-text-2);
  background:var(--ss-surface); border:1px solid var(--ss-border); border-radius:var(--ss-r-btn);}
.theme-2026 .ss-pagination a:hover{border-color:var(--ss-border-strong); color:var(--ss-text);}
.theme-2026 .ss-pagination .active .page-link,
.theme-2026 .ss-pagination .ss-page-active{background:var(--ss-accent); border-color:var(--ss-accent);
  color:#fff;}
.theme-2026 .ss-pagination .disabled .page-link,
.theme-2026 .ss-pagination .ss-page-disabled{opacity:.45; pointer-events:none;}

/* Bootstrap modal token overlay (modals keep Bootstrap markup + JS) */
.theme-2026 .modal-content{background:var(--ss-surface); color:var(--ss-text);
  border:1px solid var(--ss-border); border-radius:var(--ss-r-card); box-shadow:var(--ss-shadow);}
.theme-2026 .modal-header,
.theme-2026 .modal-footer{border-color:var(--ss-border);}
.theme-2026 .modal-title{font-size:18px; font-weight:600; letter-spacing:-.01em;}
.theme-2026 .modal-body{font-size:15px; color:var(--ss-text-2); line-height:1.6;}

/* App/page scaffolding for migrated base2 pages */
.theme-2026 .ss-page{padding:48px 0 8px;}
.theme-2026 .ss-page__title{font-size:30px; font-weight:600; letter-spacing:-.025em; margin:0 0 6px;}
.theme-2026 .ss-page__lead{font-size:16px; color:var(--ss-text-2); margin:0 0 8px;}
.theme-2026 .ss-page__lead code,.theme-2026 .ss-page code:not(.ss-table code){font-family:var(--ss-mono); font-size:.9em; background:var(--ss-surface-alt); border:1px solid var(--ss-border); border-radius:5px; padding:.08em .4em; color:var(--ss-text);}
.theme-2026 .ss-card{background:var(--ss-surface); border:1px solid var(--ss-border-strong);
  border-radius:var(--ss-r-card); padding:24px; box-shadow:0 1px 2px rgba(16,24,40,.06),0 10px 28px rgba(16,24,40,.11),0 2px 6px rgba(16,24,40,.05);}
.theme-2026 .ss-stack > * + *{margin-top:16px;}
/* Screenshot-tool share buttons: _screenshot_shared_styles.html hardcodes color:#fff (dark-theme
   default), which makes the save/copy icons invisible on the light theme. Override for theme-2026. */
.theme-2026 #share a, .theme-2026 #share button{ color:var(--ss-text); background:var(--ss-surface);
  border:1px solid var(--ss-border-strong); opacity:1; }
.theme-2026 #share a:hover, .theme-2026 #share button:hover{ color:var(--ss-accent);
  border-color:var(--ss-accent); background:var(--ss-surface); }
.theme-2026 #share button:disabled{ color:var(--ss-text-3); opacity:.55; }
.theme-2026 .screenshot-action-status--success{ color:#067647; }
.theme-2026 .screenshot-action-status--error{ color:var(--ss-error); }
.theme-2026 .screenshot-action-status--pending{ color:var(--ss-text-2); }
.theme-2026 .screenshot-ephemeral-notice{ color:var(--ss-text-2); }
/* Auth / form cards (signup, login, password reset) */
.theme-2026 .ss-authwrap{display:flex; justify-content:center; padding:80px 24px 96px; background:radial-gradient(900px 480px at 50% -8%, rgba(226,69,47,.06), transparent 60%), var(--ss-page); min-height:calc(100vh - 60px); align-items:flex-start;}
.theme-2026 .ss-auth{width:100%; max-width:440px; margin:0 auto; background:var(--ss-surface);
  border:1px solid var(--ss-border-strong); border-top:3px solid var(--ss-accent); border-radius:var(--ss-r-card);
  box-shadow:0 1px 3px rgba(16,24,40,.06),0 16px 40px rgba(16,24,40,.10); padding:32px 30px;}
.theme-2026 .ss-auth h1,.theme-2026 .ss-auth h2{font-size:22px; font-weight:600; letter-spacing:-.02em;
  color:var(--ss-text); margin:0 0 6px; text-align:center;}
.theme-2026 .ss-auth__sub{font-size:14px; color:var(--ss-text-2); text-align:center; margin:0 0 22px;}
.theme-2026 .ss-auth .form-control,
.theme-2026 .ss-auth input[type=text],.theme-2026 .ss-auth input[type=email],
.theme-2026 .ss-auth input[type=password],.theme-2026 .ss-auth input[type=number],
.theme-2026 .ss-auth .ss-input{width:100%; height:42px; padding:0 12px; border:1px solid var(--ss-border-strong);
  border-radius:var(--ss-r-btn); background:#FCFCFD; color:var(--ss-text); font-size:14px; font-family:inherit; box-shadow:inset 0 1px 2px rgba(16,24,40,.04);}
.theme-2026 .ss-auth input:not(.is-invalid):not([aria-invalid="true"]){border-color:var(--ss-border-strong);}
.theme-2026 .ss-auth textarea.form-control{height:auto; padding:10px 12px;}
.theme-2026 .ss-auth .form-control:focus,.theme-2026 .ss-auth .ss-input:focus,
.theme-2026 .ss-auth input:focus{outline:0; border-color:var(--ss-accent); box-shadow:0 0 0 3px rgba(226,69,47,.13);}
.theme-2026 .ss-auth label{display:block; font-size:13px; font-weight:600; color:var(--ss-text); margin:0 0 6px;}
.theme-2026 .ss-auth .form-group,.theme-2026 .ss-auth .ss-field{margin-bottom:16px;}
.theme-2026 .ss-auth .btn-primary,.theme-2026 .ss-auth .ss-btn{width:100%; display:flex; align-items:center;
  justify-content:center; background:var(--ss-accent); border:0; color:#fff; border-radius:var(--ss-r-btn);
  padding:11px 16px; font-size:14px; font-weight:600; cursor:pointer; text-transform:none;
  box-shadow:0 1px 2px rgba(16,24,40,.08),0 1px 6px rgba(226,69,47,.28);}
.theme-2026 .ss-auth .btn-primary:hover,.theme-2026 .ss-auth .ss-btn:hover{background:var(--ss-accent-hover);}
.theme-2026 .ss-auth .btn-secondary,.theme-2026 .ss-auth .btn-link,
.theme-2026 .ss-auth .btn:not(.btn-primary):not(.ss-btn){background:var(--ss-surface-alt); border:1px solid var(--ss-border-strong);
  color:var(--ss-text); border-radius:var(--ss-r-btn); padding:10px 14px; font-weight:600; text-transform:none;}
.theme-2026 .ss-auth .helptext{font-size:12.5px; color:var(--ss-text-3); margin-top:5px; display:block;}
.theme-2026 .ss-auth .ss-help{display:inline-flex; align-items:center; justify-content:center; width:16px; height:16px; margin-left:6px; border:1px solid var(--ss-border-strong); border-radius:50%; font-size:11px; line-height:1; color:var(--ss-text-2); text-decoration:none; vertical-align:middle;}
.theme-2026 .ss-auth .ss-label{display:flex; align-items:center;}
.theme-2026 .ss-auth .errorlist{list-style:none; padding:0; margin:6px 0 0; color:var(--ss-error); font-size:13px;}
.theme-2026 .ss-auth__foot{text-align:center; font-size:13.5px; color:var(--ss-text-2); margin-top:18px;}
.theme-2026 .ss-auth__foot a{color:var(--ss-accent); font-weight:600;}
