@import url('lrl-tokens.css');
/* Local aliases now resolve to the canonical token layer. */
*{box-sizing:border-box}
:root{--n:var(--lrl-ink);--ink:var(--lrl-ink);--mut:var(--lrl-slate-500);--line:var(--lrl-line);--cyan:var(--lrl-cyan);--teal:var(--lrl-teal)}
.lri-app-page{margin:0;background:var(--lrl-mist);color:var(--ink);font-family:var(--lrl-font-sans)}.lri-app{min-height:100vh;padding:118px 24px 80px}.lri-app__top,.lri-consult,.lri-loading,.lri-result,.lri-error,.lri-upgrade-bar{max-width:1080px;margin-left:auto;margin-right:auto}.lri-app__top{display:flex;justify-content:space-between;gap:24px;align-items:center;margin-bottom:54px}.lri-app__brand{display:flex;align-items:center;gap:14px;color:var(--ink);text-decoration:none}.lri-app__brand strong,.lri-app__brand small{display:block}.lri-app__brand small{margin-top:3px;color:var(--mut);font-size:var(--lrl-body-sm)}.lri-mini-orb{width:42px;height:42px;border-radius:50%;position:relative;display:grid;place-items:center;background:radial-gradient(circle at 35% 30%,#99f6e4,rgba(22,184,217,.45) 36%,#07111f 75%);box-shadow:inset 0 0 0 1px rgba(94,234,212,.34),0 12px 30px rgba(7,17,31,.16)}.lri-mini-orb i,.lri-mini-orb b{position:absolute;border:1px solid rgba(94,234,212,.48);border-radius:50%}.lri-mini-orb i{inset:8px 4px;transform:rotate(32deg)}.lri-mini-orb b{inset:4px 9px;transform:rotate(-28deg)}.lri-app__status{display:flex;gap:10px;align-items:center}.lri-plan-badge{font-size:var(--lrl-body-sm);font-weight:800;padding:8px 12px;border-radius:var(--lrl-radius-pill);background:var(--lrl-teal-tint);color:var(--lrl-teal-700)}.lri-plan-badge[data-tier=pro]{background:var(--lrl-ink);color:#fff}.lri-usage{font-size:var(--lrl-body-sm);color:var(--mut)}.lri-consult,.lri-result{background:#fff;border:1px solid var(--line);border-radius:var(--lrl-radius-feature);padding:clamp(28px,5vw,58px);box-shadow:var(--lrl-shadow-card)}.lri-kicker{margin:0 0 12px;text-transform:uppercase;letter-spacing:var(--lrl-tracking-kicker);font-size:var(--lrl-kicker);font-weight:var(--lrl-weight-strong);color:var(--lrl-cyan-700)}.lri-consult h1{margin:0;font-size:var(--lrl-display);font-weight:var(--lrl-weight-display);line-height:1.03;letter-spacing:var(--lrl-tracking-display);max-width:14ch;text-wrap:balance}.lri-consult__intro>p:last-child{max-width:700px;margin:22px 0 0;font-size:var(--lrl-lede);line-height:var(--lrl-leading-body);color:var(--lrl-slate);text-wrap:pretty}.lri-form{margin-top:42px}.lri-form label{display:block;font-size:var(--lrl-body-sm);font-weight:800;margin-bottom:9px}.lri-form label span{font-weight:500;color:var(--lrl-slate-400)}.lri-form textarea,.lri-form input{width:100%;font:inherit;border:1px solid var(--lrl-line-strong);background:var(--lrl-frost);outline:none}.lri-form textarea{min-height:190px;resize:vertical;border-radius:var(--lrl-radius-card);padding:20px;line-height:var(--lrl-leading-body)}.lri-form input{height:54px;border-radius:var(--lrl-radius-chip);padding:0 16px}.lri-form textarea:focus,.lri-form input:focus{border-color:rgba(22,184,217,.7);box-shadow:0 0 0 4px rgba(22,184,217,.10)}.lri-form__row{display:grid;grid-template-columns:1fr auto;gap:16px;align-items:end;margin-top:20px}.lri-submit,.lri-secondary{font:inherit;border:1px solid transparent;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:15.5px;font-weight:var(--lrl-weight-strong);border-radius:var(--lrl-radius-pill);min-height:54px;padding:0 28px;transition:background .2s,border-color .2s,color .2s,box-shadow .2s,transform .2s}.lri-submit{background:var(--lrl-cyan);color:#fff;box-shadow:var(--lrl-shadow-cta-cyan)}.lri-submit:hover{background:var(--lrl-cyan-600);transform:translateY(-1px)}.lri-secondary{background:#fff;color:var(--ink);border:1px solid var(--lrl-line-strong);box-shadow:var(--lrl-shadow-sm)}.lri-secondary:hover{border-color:var(--lrl-cyan);color:var(--lrl-cyan-700)}.lri-form__note{margin:14px 0 0;color:var(--lrl-slate-400);font-size:var(--lrl-body-sm);line-height:1.55}.lri-starters{display:flex;gap:8px;flex-wrap:wrap;margin-top:24px}.lri-starters button{font:inherit;border:1px solid var(--line);background:#fff;border-radius:var(--lrl-radius-pill);min-height:40px;padding:0 16px;color:var(--lrl-slate);font-size:var(--lrl-body-sm);font-weight:700;cursor:pointer;transition:border-color .2s,color .2s}.lri-starters button:hover{border-color:var(--lrl-cyan-tint-border);color:var(--lrl-cyan-700)}.lri-loading{margin-top:26px;background:var(--lrl-panel-glow),var(--lrl-panel-dark);border-radius:var(--lrl-radius-panel);padding:26px 30px;color:#fff;display:flex;align-items:center;gap:20px}.lri-loading[hidden],.lri-result[hidden],.lri-error[hidden],.lri-upgrade-bar[hidden]{display:none}.lri-loading__orb{width:34px;height:34px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#99f6e4,#16b8d9 36%,#07111f 74%);animation:pulse 1.8s ease-in-out infinite}@keyframes pulse{50%{transform:scale(1.06)}}.lri-loading p{margin:4px 0 0;color:var(--lrl-slate-400);font-size:var(--lrl-body-sm)}.lri-result{margin-top:26px}.lri-result__head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.lri-result__head>div{min-width:0}.lri-confidence{align-self:flex-start;display:inline-flex;align-items:center;gap:7px;white-space:nowrap;line-height:1;width:auto;max-width:none}.lri-result h2{margin:0;font-size:var(--lrl-h2);font-weight:var(--lrl-weight-display);letter-spacing:var(--lrl-tracking-h2)}.lri-confidence{font-size:var(--lrl-body-sm);font-weight:800;padding:8px 12px;border-radius:var(--lrl-radius-pill);background:var(--lrl-mist);color:var(--lrl-slate)}.lri-confidence:before{content:"Confidence";font-size:var(--lrl-kicker);font-weight:var(--lrl-weight-strong);letter-spacing:var(--lrl-tracking-kicker);text-transform:uppercase;color:var(--lrl-slate-400)}.lri-confidence[data-level="high"]{background:var(--lrl-teal-tint);color:var(--lrl-teal-700)}.lri-confidence[data-level="moderate"]{background:var(--lrl-blue-tint);color:var(--lrl-blue-700)}.lri-confidence[data-level="exploratory"]{background:var(--lrl-mist);color:var(--lrl-slate);border:1px solid var(--lrl-line)}.lri-recommendation{margin:24px 0 0;font-size:var(--lrl-h3);line-height:1.5;letter-spacing:-.02em;font-weight:650;text-wrap:pretty}.lri-result__grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:34px}.lri-result__grid article{background:var(--lrl-mist);border-radius:var(--lrl-radius-card);padding:24px}.lri-result h3{margin:0 0 14px;font-size:16.5px;letter-spacing:-.02em}.lri-result ul{margin:0;padding-left:18px;color:var(--lrl-slate);font-size:var(--lrl-body-sm);line-height:var(--lrl-leading-body)}.lri-evidence{margin-top:18px;border:1px solid rgba(20,184,166,.18);background:var(--lrl-teal-tint);border-radius:var(--lrl-radius-card);padding:26px;display:grid;grid-template-columns:minmax(220px,.72fr) minmax(0,1.45fr);gap:26px}.lri-evidence__intro p:last-child{margin:8px 0 0;color:var(--lrl-slate);font-size:var(--lrl-body-sm);line-height:1.55;max-width:34ch}.lri-source-list{display:grid;gap:8px}.lri-source{background:#fff;border:1px solid var(--lrl-line);border-radius:var(--lrl-radius-chip);padding:15px 16px}.lri-source__meta{display:flex;gap:8px;align-items:center;flex-wrap:wrap;text-transform:uppercase;font-size:var(--lrl-kicker);color:var(--lrl-cyan-700);font-weight:var(--lrl-weight-strong);letter-spacing:var(--lrl-tracking-kicker)}.lri-source strong{display:block;font-size:var(--lrl-body);line-height:1.35;margin-top:6px}.lri-source__creator{display:block;margin-top:4px;color:var(--lrl-slate-500);font-size:var(--lrl-body-sm)}.lri-source__why{margin:9px 0 0;color:var(--lrl-slate);font-size:var(--lrl-body-sm);line-height:1.5}.lri-source__link{display:inline-block;margin-top:10px;color:var(--lrl-cyan-700);font-size:var(--lrl-body-sm);font-weight:800;text-decoration:none}.lri-source__link:hover{text-decoration:underline}.lri-result__meta{border-top:1px solid var(--line);margin-top:28px;padding-top:22px;display:flex;justify-content:space-between;gap:18px}.lri-result__meta>div>span{font-size:var(--lrl-kicker);letter-spacing:var(--lrl-tracking-kicker);text-transform:uppercase;font-weight:var(--lrl-weight-strong);color:var(--lrl-slate-400)}.lri-result__meta>div>div{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.lri-result__meta>div>div span{font-size:var(--lrl-body-sm);background:var(--lrl-cyan-tint);color:var(--lrl-cyan-700);border-radius:var(--lrl-radius-pill);padding:6px 12px;font-weight:700}.lri-error{margin-top:26px;background:#fff;border:1px solid var(--line);border-radius:var(--lrl-radius-panel);padding:28px}.lri-error__actions{display:flex;gap:10px}.lri-upgrade-bar{margin-top:22px;background:var(--lrl-panel-dark);color:#fff;border-radius:var(--lrl-radius-card);padding:21px 24px;display:flex;align-items:center;justify-content:space-between;gap:24px}.lri-upgrade-bar strong,.lri-upgrade-bar span{display:block}.lri-upgrade-bar span{font-size:var(--lrl-body-sm);color:var(--lrl-slate-400);margin-top:4px}.lri-upgrade-bar a{display:inline-flex;align-items:center;min-height:44px;color:#fff;background:var(--lrl-cyan);border-radius:var(--lrl-radius-pill);padding:0 20px;text-decoration:none;font-size:var(--lrl-body-sm);font-weight:var(--lrl-weight-strong);box-shadow:var(--lrl-shadow-cta-cyan)}.lri-upgrade-bar a:hover{background:var(--lrl-cyan-600)}@media(max-width:760px){.lri-app{padding:100px 14px 54px}.lri-app__top,.lri-result__head,.lri-result__meta,.lri-upgrade-bar{align-items:flex-start;flex-direction:column}.lri-form__row,.lri-result__grid,.lri-evidence{grid-template-columns:1fr}.lri-submit{width:100%}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* LRI 1.0.4 — contextual Learning Rewired ecosystem routing */
.lri-ecosystem{margin-top:22px;padding:24px;border:1px solid var(--lrl-line);border-radius:var(--lrl-radius-card);background:#fff}
.lri-ecosystem__head{display:flex;justify-content:space-between;align-items:flex-end;gap:28px;margin-bottom:16px}
.lri-ecosystem__head h3{margin:3px 0 0;font-size:18.5px;letter-spacing:-.024em}
.lri-ecosystem__head>p{margin:0;max-width:420px;color:var(--lrl-slate-500);font-size:var(--lrl-body-sm);line-height:1.5}
.lri-ecosystem__routes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.lri-route{padding:20px;border:1px solid var(--lrl-line);border-radius:var(--lrl-radius-card);background:var(--lrl-mist)}
.lri-route[data-product="studio"]{background:var(--lrl-blue-tint);border-color:rgba(37,99,235,.18)}
.lri-route[data-product="lab"]{background:var(--lrl-cyan-tint);border-color:var(--lrl-cyan-tint-border)}
.lri-route__product{display:block;margin-bottom:8px;color:var(--lrl-cyan-700);font-size:var(--lrl-kicker);font-weight:var(--lrl-weight-strong);letter-spacing:var(--lrl-tracking-kicker);text-transform:uppercase}
.lri-route h4{margin:0;color:var(--lrl-ink);font-size:16.5px;letter-spacing:-.02em}
.lri-route p{margin:8px 0 14px;color:var(--lrl-slate);font-size:var(--lrl-body-sm);line-height:1.55}
.lri-route__cta{display:inline-flex;align-items:center;color:var(--lrl-cyan-700);font-size:var(--lrl-body-sm);font-weight:var(--lrl-weight-strong);text-decoration:none}
.lri-route__cta:hover{text-decoration:underline}
@media(max-width:760px){.lri-ecosystem__head{display:block}.lri-ecosystem__head>p{margin-top:8px}.lri-ecosystem__routes{grid-template-columns:1fr}}


/* LRI 1.0.5 — desktop app + workspace exit */
.lri-app__actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.lri-top-action{
  min-height:40px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  padding:0 12px;
  border:1px solid var(--lrl-line);
  border-radius:var(--lrl-radius-pill);
  background:#fff;
  color:var(--lrl-slate);
  font:700 var(--lrl-body-sm)/1 var(--lrl-font-sans);
  text-decoration:none;
  cursor:pointer;
}
.lri-top-action:hover{border-color:var(--lrl-cyan-tint-border);color:var(--lrl-cyan-700)}
.lri-top-action--install{background:var(--lrl-cyan-tint);color:var(--lrl-cyan-700);border-color:var(--lrl-cyan-tint-border)}
.lri-top-action--logout{background:transparent}
.lri-top-action:disabled{opacity:.55;cursor:wait}
.lri-app__actions .lri-app__status{margin-left:4px}

.lri-install-dialog{
  width:min(92vw,520px);
  border:1px solid var(--lrl-line);
  border-radius:var(--lrl-radius-panel);
  padding:30px;
  box-shadow:0 32px 90px rgba(15,23,42,.22);
  color:#0f172a;
}
.lri-install-dialog::backdrop{background:rgba(7,17,31,.55);backdrop-filter:blur(5px)}
.lri-install-dialog__orb{
  width:44px;height:44px;border-radius:50%;margin-bottom:18px;
  background:radial-gradient(circle at 35% 30%,#99f6e4,#16b8d9 36%,#07111f 75%);
  box-shadow:0 12px 28px rgba(7,17,31,.18)
}
.lri-install-dialog h2{margin:0;font-size:var(--lrl-h3);font-weight:900;letter-spacing:-.035em}
.lri-install-dialog>p:not(.lri-kicker){color:var(--lrl-slate-500);font-size:var(--lrl-body);line-height:var(--lrl-leading-body);margin:12px 0 22px}

@media(max-width:900px){
  .lri-app__top{align-items:flex-start}
  .lri-app__actions{max-width:360px}
  .lri-app__actions .lri-app__status{width:100%;justify-content:flex-end;margin-top:3px}
}
@media(max-width:640px){
  .lri-app__top{display:block}
  .lri-app__actions{justify-content:flex-start;max-width:none;margin-top:18px}
  .lri-app__actions .lri-app__status{justify-content:flex-start}
}

/* Standards layer parity: the marketing pages define a focus ring, the workspace did not. */
.lri-app-page :focus-visible{outline:2px solid var(--lrl-blue-700);outline-offset:3px;border-radius:var(--lrl-radius-chip)}
