.license-status { background:none; border:0; padding:7px 0; }
.license-status:not(.active):hover { color:var(--accent); }
.activation-modal { width:min(880px,calc(100% - 32px)); max-height:calc(100dvh - 40px); border:1px solid var(--rule); border-top:3px solid var(--accent); padding:0; margin:auto; color:var(--ink); overflow:auto; }
.activation-modal[open] { display:grid; grid-template-columns:.9fr 1.1fr; }
.activation-modal::backdrop { background:#19191988; backdrop-filter:blur(2px); }
.activation-modal .activation-intro { padding:64px 35px 28px; }
.activation-modal .activation-intro h2 { font-size:34px; margin-top:40px; }
.activation-modal .activation-signature { padding-top:75px; font-size:8px; }
.activation-modal .activation-entry { width:calc(100% - 64px); padding:62px 0 32px; }
.activation-modal .activation-entry h2 { font-size:24px; }
.activation-modal .activation-description { margin-bottom:25px; }
.activation-close { position:absolute; right:12px; top:9px; font-size:24px; z-index:1; }
.tour-notice { display:flex; gap:16px; justify-content:space-between; align-items:center; background:var(--wash); border-bottom:1px solid var(--rule); padding:10px 28px; font-size:11px; line-height:1.7; flex-shrink:0; color:var(--muted); }
.tour-notice button { flex-shrink:0; background:none; border:0; font-size:11px; color:var(--accent); }
.guest-guide #empty-state, .guest-guide #viewer-container, .guest-guide .image-tools,
.guest-guide #filmstrip, .guest-guide #specimen-status, .guest-guide .quick-probes,
.guest-guide #composer { display:none !important; }
.guest-guide .viewport-stage { overflow:auto; }
.tour-guide { width:100%; padding:32px 28px 24px; }
.tour-guide > h3 { font-size:26px; line-height:1.5; font-weight:600; margin:12px 0 10px; }
.guide-intro { color:var(--muted); font-size:12px; line-height:1.9; max-width:34em; }
.guide-steps { list-style:none; padding:0; margin:26px 0 20px; }
.guide-steps li { display:flex; gap:18px; border-top:1px solid var(--rule); padding:18px 0; }
.guide-number { color:var(--accent); font:12px/1.8 var(--font-mono); flex-shrink:0; }
.guide-steps h4 { font-size:14px; font-weight:600; margin:0 0 7px; line-height:1.6; }
.guide-steps p { font-size:12px; color:var(--muted); line-height:1.9; margin:0; }
.guide-bottom { border-top:1px solid var(--rule); padding-top:18px; display:flex; flex-direction:column; align-items:flex-start; gap:16px; }
.guide-bottom > span { font-size:10px; line-height:1.7; color:var(--muted); }
@media(max-width:760px) {
  .guest-guide .viewport-stage { height:auto; overflow:visible; }
  .tour-guide { padding:26px 18px; }
  .tour-guide > h3 { font-size:23px; }
  .activation-modal[open] { display:block; }
  .activation-modal .activation-intro { display:none; }
  .activation-modal .activation-entry { width:calc(100% - 40px); padding:45px 0 24px; }
  .activation-modal .activation-entry h2 { font-size:22px; }
  .tour-notice { padding:9px 18px; font-size:10px; gap:12px; }
}
