/* ============================================================
   YOUR THOUGHTS — widget styles (_shared/comments.css)
   ============================================================
   Token-driven: inherits the site's palette from styles.css when
   present, with fallbacks so the widget is self-sufficient. The
   widget injects this file itself.
   Class prefix: .yt-  (namespaced so it never collides with a page)
   ============================================================ */

.yt-root{
  --yt-gold:var(--gold,#E8B84B); --yt-gold-deep:var(--gold-deep,#C0913F);
  --yt-cyan:var(--cyan,#45D6DF); --yt-violet:var(--violet,#9B5DE5);
  --yt-amber:var(--amber,#EF9F27); --yt-stone:var(--stone-tier,#9a8a7a);
  --yt-cyan-deep:var(--cyan-deep,#1f9aa5);
  --yt-space:var(--space,#0A0A12); --yt-card:var(--card,#12121e);
  --yt-ink:var(--ink,#F2EDE0); --yt-ink-soft:var(--ink-soft,#9a9ab0);
  --yt-ink-stone:var(--ink-stone,#b89a6a);
  --yt-line:var(--card-line,#24243a);
  --yt-stone-line:var(--stone-line,#5a3d1c);
  --yt-danger:#e8a0a0;   /* soft alarm — report/danger accents */
  --yt-mono:var(--mono,ui-monospace,"SF Mono",Menlo,Consolas,monospace);
  color:var(--yt-ink);
  font-family:var(--font,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif);
  margin:32px 0;
}
.yt-root *{box-sizing:border-box}

/* ---- section header — centered, in the site's idiom ---- */
.yt-head{text-align:center;padding-bottom:14px;border-bottom:1px solid var(--yt-line);margin-bottom:18px}
.yt-h3{margin:0;font-size:15px;letter-spacing:.14em;text-transform:uppercase;color:var(--yt-gold);font-weight:700}
.yt-meta{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:7px}
.yt-count{font-size:12px;color:var(--yt-ink-soft);letter-spacing:.5px}
.yt-sort{background:none;border:none;color:var(--yt-ink-soft);cursor:pointer;font:inherit;font-size:12px;
  letter-spacing:.5px;padding:2px 4px;text-decoration:underline dotted;text-underline-offset:3px}
.yt-sort:hover{color:var(--yt-cyan)}
.yt-link{background:none;border:none;color:var(--yt-ink-soft);cursor:pointer;
  font:inherit;font-size:12.5px;text-decoration:underline;text-underline-offset:2px;padding:2px}
.yt-link:hover{color:var(--yt-cyan)}
.yt-link-danger:hover{color:#e8a0a0}

/* ---- avatar (constellation glyph) ---- */
.yt-avatar{display:inline-block;vertical-align:middle;border-radius:50%;
  background:radial-gradient(circle at 50% 40%,#141426,var(--yt-space));
  border:1px solid var(--yt-line);flex:none}
.yt-av-btn{background:none;border:none;padding:0;cursor:pointer;flex:none;height:40px}
.yt-av-btn:hover .yt-avatar{border-color:var(--yt-gold-deep)}

/* ---- buttons ---- */
.yt-btn{font:inherit;font-size:13.5px;letter-spacing:.3px;cursor:pointer;border-radius:8px;
  padding:9px 16px;border:1px solid var(--yt-line);background:#0f0f1a;color:var(--yt-ink);
  transition:border-color .15s,background .15s}
.yt-btn:hover{border-color:var(--yt-gold-deep)}
.yt-btn-primary{background:rgba(232,184,75,.12);border-color:var(--yt-stone-line);color:var(--yt-gold)}
.yt-btn-primary:hover{background:rgba(232,184,75,.2)}
.yt-btn-danger{background:rgba(220,80,80,.08);border-color:#7a3030;color:#e8a0a0}
.yt-btn-danger:hover{background:rgba(220,80,80,.16)}
.yt-btn:disabled{opacity:.5;cursor:default}
.yt-more{display:block;margin:16px auto 0}

/* ---- signed-out prompt (per-board; just points up to the global bar) ---- */
.yt-gate{display:flex;align-items:center;gap:14px;flex-wrap:wrap;
  background:var(--yt-card);border:1px solid var(--yt-line);border-radius:12px;padding:18px 20px}
.yt-gate p{margin:0;color:var(--yt-ink-soft);font-size:14px;line-height:1.5;flex:1;min-width:200px}
.yt-gate-quiet{padding:14px 16px;text-align:center;justify-content:center}
.yt-gate-quiet p{flex:0 1 auto;min-width:0;max-width:62ch;font-size:13.5px;font-style:italic}

/* ---- conversation threads (one level under a thought) ---- */
.yt-thread{margin:12px 0 0 18px;padding-left:16px;border-left:2px solid var(--yt-line)}
.yt-reply{display:flex;gap:10px;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.03)}
.yt-reply:last-of-type{border-bottom:none}
.yt-reply .yt-r-main{flex:1;min-width:0}
.yt-reply .yt-c-body{font-size:13.5px}
.yt-reply-held{opacity:.75}
.yt-c-author{font-size:10px;letter-spacing:.08em;text-transform:uppercase;font-weight:700;
  padding:1px 8px;border-radius:20px;border:1px solid var(--yt-cyan);color:var(--yt-cyan);
  background:rgba(69,214,223,.08)}
.yt-c-name-gone{font-style:italic;color:var(--yt-ink-soft);font-size:13.5px}
.yt-c-gone .yt-av-gone{opacity:.35}
.yt-c-body-gone{font-style:italic;color:var(--yt-ink-soft);font-size:13px}
.yt-r-foot{display:flex;align-items:center;gap:12px;margin-top:6px}
.yt-connect-sm{transform:scale(.9);transform-origin:left center}
.yt-mention{color:var(--yt-cyan);font-weight:600}
.yt-replies-toggle{color:var(--yt-ink-stone)}
.yt-replies-toggle:hover{color:var(--yt-gold)}
.yt-reply-btn{color:var(--yt-ink-soft)}
.yt-thread-empty{color:var(--yt-ink-soft);font-style:italic;font-size:13px;padding:10px 0}
.yt-thread-note{color:var(--yt-ink-soft);font-size:12.5px;font-style:italic;padding:8px 0 2px}
.yt-reply-composer{margin-top:10px;padding-top:10px;border-top:1px solid rgba(255,255,255,.04)}
.yt-reply-composer .yt-rc-input{width:100%;background:#0d0d18;border:1px solid var(--yt-line);
  border-radius:9px;padding:9px 12px;color:var(--yt-ink);font:inherit;font-size:13.5px;resize:vertical;min-height:44px}
.yt-reply-composer .yt-rc-input:focus{outline:none;border-color:var(--yt-cyan)}
.yt-rc-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:8px}
.yt-rc-foot .yt-msg-slot{flex:1}
.yt-rc-foot .yt-btn{padding:7px 14px;font-size:12.5px}

/* ---- ground rules (signup agreement) ---- */
.yt-rules-wrap{margin:4px 0 14px}
.yt-agree-note{display:block;font-size:12.5px;color:var(--yt-ink-soft);line-height:1.55;text-align:left}
.yt-agree-note .yt-link{font-size:12.5px;color:var(--yt-cyan);padding:0}
.yt-rules-pane{position:absolute;inset:0;background:var(--yt-card);z-index:5;padding:28px 30px;
  overflow-y:auto;border-radius:16px;text-align:left}
.yt-rules-h{margin:0 0 12px;font-size:17px;color:var(--yt-gold);letter-spacing:.5px}
.yt-rules-p{color:var(--yt-ink-soft);font-size:13.5px;line-height:1.65;margin:0 0 12px}
.yt-rules-list{margin:0 0 14px;padding-left:18px;display:flex;flex-direction:column;gap:10px}
.yt-rules-list li{color:var(--yt-ink-soft);font-size:13px;line-height:1.6}
.yt-rules-list b{color:var(--yt-ink)}
.yt-rules-back{width:100%}
/* gate variant: rules scroll in their own well, agree button pinned below */
.yt-rules-pane.yt-rules-gate{display:flex;flex-direction:column;overflow:hidden}
.yt-rules-gate .yt-rules-scroll{flex:1;min-height:0;overflow-y:auto;padding-right:8px;
  margin-bottom:12px;border-bottom:1px solid rgba(255,255,255,.08)}
.yt-rules-hint{font-size:11.5px;color:var(--yt-ink-soft);opacity:.85;text-align:center;margin:0 0 10px}
.yt-agree-btn{width:100%}
.yt-agree-btn[disabled]{opacity:.4;cursor:not-allowed}
.yt-rules-alt{margin-top:10px;text-align:center}
.yt-rules-alt .yt-link{font-size:12px;color:var(--yt-ink-soft)}
.yt-rules-alt .yt-link:hover{color:var(--yt-cyan)}
/* staff + account links in the signed-in bar (anchors styled as buttons) */
a.yt-btn{text-decoration:none;display:inline-flex;align-items:center;gap:6px}
.yt-staff-link{border-color:rgba(69,214,223,.5);color:var(--yt-cyan)}
.yt-staff-link:hover{border-color:var(--yt-cyan);box-shadow:0 0 14px -6px rgba(69,214,223,.6)}
/* ---- full account page (community/account.php) ---- */
.yt-acct-head{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-bottom:18px;text-align:left}
.yt-acct-head .yt-h2{margin:0}
.yt-acct-id{flex:1;min-width:200px}
.yt-acct-actions{display:flex;gap:10px;flex-wrap:wrap}
.yt-role-chip{display:inline-block;font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;
  border-radius:20px;padding:2px 9px;border:1px solid;vertical-align:middle}
.yt-role-owner{color:var(--yt-gold);border-color:rgba(232,184,75,.5)}
.yt-role-mod{color:var(--yt-cyan);border-color:rgba(69,214,223,.5)}
.yt-acct-tabs{flex-wrap:wrap}
.yt-acct-panel{text-align:left}
.yt-stat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;margin:6px 0 22px}
.yt-stat-card{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);
  border-radius:12px;padding:14px 16px;text-align:center}
.yt-stat-card[data-goto]{cursor:pointer;transition:border-color .2s}
.yt-stat-card[data-goto]:hover{border-color:rgba(232,184,75,.45)}
.yt-stat-card b{display:block;font-size:22px;color:var(--yt-gold)}
.yt-stat-card span{font-size:11.5px;color:var(--yt-ink-soft);letter-spacing:.03em}
.yt-acct-h4{margin:18px 0 10px;font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--yt-cyan)}
.yt-acct-reply{border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:12px 14px;margin-bottom:10px;text-align:left}
.yt-acct-reply-meta{font-size:12px;color:var(--yt-ink-soft);margin-bottom:6px}
.yt-acct-reply-body{font-size:13.5px;color:var(--yt-ink);line-height:1.6}
.yt-acct-reply-parent{margin-top:7px;font-size:12px;color:var(--yt-ink-soft);font-style:italic}
.yt-acct-signin{text-align:center;padding:40px 0}
.yt-th-create-dash{margin:0 0 16px;text-align:center}
.yt-th-create-dash .yt-th-form{text-align:left;margin-top:12px}

/* ---- member theories ---- */
/* the law (Gortiva, 2026-07-05): theories are ALWAYS the brighter orange */
.yt-th-card{background:var(--yt-card);border:1px solid var(--yt-line);border-left:3px solid var(--yt-amber);
  border-radius:12px;padding:18px 20px;margin:0 0 14px}
.yt-th-retired{opacity:.6}
.yt-th-title{margin:8px 0 8px;font-size:1.05rem;color:var(--yt-ink);font-weight:700}
.yt-th-docs{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin:10px 0 0}
.yt-th-docs-lab{font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--yt-ink-stone)}
.yt-th-board{margin-top:12px;border-top:1px solid rgba(255,255,255,.05);padding-top:10px}
.yt-th-create{margin:0 0 20px;text-align:center}
.yt-th-create .yt-th-form{text-align:left;margin-top:12px}
.yt-th-start{margin:0 auto}
.yt-doc-attach{margin:10px 0 0;text-align:center}
.yt-da-panel{margin-top:8px;background:var(--yt-card);border:1px solid var(--yt-line);border-radius:10px;
  padding:10px 14px;text-align:left}
.yt-da-row{display:flex;align-items:center;gap:10px;padding:7px 0;border-bottom:1px solid rgba(255,255,255,.04)}
.yt-da-row:last-child{border-bottom:none}
.yt-da-title{flex:1;font-weight:600;color:var(--yt-ink);font-size:13.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.yt-da-attach{padding:6px 13px;font-size:12px}
.yt-da-done{color:var(--yt-gold);font-size:13px}
.yt-th-manage{display:flex;align-items:center;gap:8px;margin-top:10px;flex-wrap:wrap}
.yt-th-manage .yt-th-doc-in{flex:1;min-width:140px;background:#0d0d18;border:1px solid var(--yt-line);
  border-radius:8px;padding:7px 10px;color:var(--yt-ink);font:inherit;font-size:12.5px}
.yt-th-manage .yt-btn{padding:6px 13px;font-size:12px}
.yt-th-mine-title{color:var(--yt-ink)}
.yt-th-edit{margin-top:10px;border-top:1px solid rgba(255,255,255,.05);padding-top:10px}

/* ---- formatting toolbar (composer) ---- */
.yt-fmt-bar{display:flex;gap:6px;margin:0 0 6px}
.yt-fmt{width:32px;height:28px;display:flex;align-items:center;justify-content:center;
  background:#0d0d18;border:1px solid var(--yt-line);border-radius:7px;color:var(--yt-ink-soft);
  font-size:12.5px;cursor:pointer;padding:0}
.yt-fmt:hover{border-color:var(--yt-gold-deep);color:var(--yt-gold)}
.yt-fmt b,.yt-fmt i{font-size:12.5px}

/* ---- sort select (board heads + feed bars) ---- */
.yt-sort-sel{background:#0d0d18;border:1px solid var(--yt-line);border-radius:7px;color:var(--yt-ink-soft);
  font:inherit;font-size:12px;padding:4px 8px;cursor:pointer}
.yt-sort-sel:hover,.yt-sort-sel:focus{border-color:var(--yt-gold-deep);color:var(--yt-gold);outline:none}
.yt-c-you{font-size:10px;letter-spacing:.08em;text-transform:uppercase;font-weight:700;
  padding:1px 8px;border-radius:20px;border:1px solid var(--yt-gold-deep);color:var(--yt-gold);
  background:rgba(232,184,75,.08)}
.yt-feed-bar{display:flex;justify-content:flex-end;margin:0 0 12px}

/* ---- forum category feeds (aggregation views on category pages) ---- */
.yt-feed-item{margin:0 0 16px}
.yt-feed-prov{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 6px;
  padding-left:6px;font-size:12px;color:var(--yt-ink-soft)}
.yt-feed-from{letter-spacing:.08em;text-transform:uppercase;font-size:10px;color:var(--yt-ink-stone)}
.yt-feed-src{color:var(--yt-cyan);text-decoration:none;font-size:12px;margin-left:auto}
.yt-feed-src:hover{text-decoration:underline}
.yt-feed-doct{color:var(--yt-ink);font-weight:600;font-size:12.5px;text-decoration:none;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:46ch}
.yt-feed-doct:hover{color:var(--yt-cyan)}
.yt-url-text{color:var(--yt-ink-stone);word-break:break-all}
.yt-feed-filters{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin:0 0 18px}
.yt-feed-filter{border:1px solid var(--yt-line);border-radius:20px;background:none;color:var(--yt-ink-soft);
  padding:5px 14px;font:inherit;font-size:12.5px;cursor:pointer}
.yt-feed-filter:hover{border-color:var(--yt-gold-deep);color:var(--yt-gold)}
.yt-feed-filter.on{color:var(--yt-gold);border-color:var(--yt-stone-line);background:rgba(232,184,75,.08)}

/* ---- forum-routing picker in the composer ---- */
.yt-cats{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin:10px 0 0}
.yt-cats-lab{font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--yt-ink-stone)}
.yt-cat-pick{font-size:11.5px;padding:3px 11px;border-radius:20px;border:1px solid var(--yt-line);
  color:var(--yt-ink-soft);cursor:pointer;user-select:none;transition:.15s}
.yt-cat-pick:hover{border-color:var(--yt-gold-deep);color:var(--yt-gold)}
.yt-cat-pick.on{color:var(--yt-gold);border-color:var(--yt-stone-line);background:rgba(232,184,75,.08)}

/* ---- "view full constellation" link (profile modal + dashboard head) ---- */
.yt-p-full{margin-top:14px;text-align:center}
.yt-p-full .yt-link{font-size:13px;color:var(--yt-cyan)}

/* ---- announcement banner (above the global bar when switched on) ---- */
.yt-announce{display:flex;align-items:center;justify-content:center;gap:12px;
  background:rgba(232,184,75,.08);border:1px solid var(--yt-line);border-left:3px solid var(--yt-gold);
  border-radius:12px;padding:12px 18px;margin:0 0 14px;text-align:center}
.yt-announce-text{color:var(--yt-gold);font-size:13.5px;line-height:1.55;letter-spacing:.2px}
.yt-announce-x{flex:none;width:26px;height:26px;box-sizing:border-box;display:flex;align-items:center;
  justify-content:center;padding:0;background:rgba(10,10,18,.5);border:1px solid var(--yt-stone-line);
  border-radius:8px;color:var(--yt-ink-soft);cursor:pointer;font-size:14px;line-height:1;
  box-shadow:0 2px 8px rgba(0,0,0,.4);transition:color .16s ease,border-color .16s ease,box-shadow .2s ease}
.yt-announce-x:hover{color:var(--yt-ink);border-color:var(--yt-cyan);
  box-shadow:0 2px 10px rgba(0,0,0,.45),0 0 10px rgba(69,214,223,.3)}

/* ---- the one global sign-in bar (sits just above the responses) ----
   Two clean sections: identity left + action buttons top right, then the
   note text in its own full-width block below — each independently sized. */
.yt-global-bar{background:var(--yt-card);border:1px solid var(--yt-line);border-radius:12px;
  padding:16px 20px;margin:28px 0}   /* symmetric: equal breathing room above + below, every page */
.yt-gbar-top{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}
.yt-gbar-who{display:flex;align-items:center;gap:10px;font-size:13.5px;color:var(--yt-ink-soft)}
.yt-gbar-who b{color:var(--yt-ink)}
.yt-gbar-actions{display:flex;gap:10px;flex:none;align-items:center;flex-wrap:wrap;justify-content:flex-end;margin-left:auto}
.yt-gbar-note{color:var(--yt-ink-soft);font-size:13px;line-height:1.6;text-align:left;
  margin-top:12px;padding-top:12px;border-top:1px solid rgba(255,255,255,.07)}

/* ---- numbered feed pagination (Open Questions) ---- */
.yt-pager{display:flex;justify-content:center;align-items:center;gap:6px;flex-wrap:wrap;margin:16px 0 4px}
.yt-pager-btn{min-width:34px;padding:7px 10px;font-size:13px;border-radius:8px;border:1px solid rgba(255,255,255,.14);
  background:transparent;color:var(--yt-ink-soft);cursor:pointer}
.yt-pager-btn:hover{border-color:var(--yt-gold);color:var(--yt-ink)}
.yt-pager-btn.on{border-color:var(--yt-gold);color:var(--yt-gold);cursor:default}
.yt-pager-btn[disabled]{opacity:.35;cursor:not-allowed}
.yt-pager-arrow{font-size:16px;line-height:1}
.yt-pager-gap{color:var(--yt-ink-soft);padding:0 2px}

/* ---- modal ---- */
.yt-modal-bg{position:fixed;inset:0;background:rgba(4,4,10,.72);backdrop-filter:blur(3px);
  z-index:9999;display:flex;align-items:center;justify-content:center;padding:20px;
  opacity:0;animation:yt-fade .18s ease forwards}
@keyframes yt-fade{to{opacity:1}}
.yt-modal{position:relative;width:100%;max-width:400px;background:var(--yt-card);
  border:1px solid var(--yt-line);border-radius:16px;padding:30px 30px 26px;overflow:hidden;
  max-height:min(86vh,780px);display:flex;flex-direction:column}
.yt-modal-dash{max-width:560px}
/* invisible staff shortcut: 7 taps here jump to the moderation login (auth modal only) */
.yt-staff-corner{position:absolute;right:0;bottom:0;width:40px;height:40px;z-index:6;
  background:transparent;cursor:default}
.yt-modal-profile{max-width:420px}
.yt-modal-stars{position:absolute;inset:0;opacity:.5;pointer-events:none}
.yt-modal-body{position:relative;overflow-y:auto;min-height:0}
.yt-modal h2{margin:0 0 4px;font-size:19px;color:var(--yt-gold);letter-spacing:.5px}
.yt-modal .yt-sub{margin:0 0 18px;font-size:12.5px;color:var(--yt-ink-soft);line-height:1.6}
.yt-tabs{display:flex;gap:6px;margin-bottom:18px}
.yt-tab{flex:1;text-align:center;padding:8px;font-size:13px;border-radius:8px;cursor:pointer;
  border:1px solid var(--yt-line);background:#0f0f1a;color:var(--yt-ink-soft)}
.yt-tab.on{background:rgba(69,214,223,.1);border-color:#1f6a70;color:var(--yt-cyan)}
.yt-field{margin-bottom:13px}
.yt-field label{display:block;font-size:11px;letter-spacing:1px;text-transform:uppercase;
  color:var(--yt-ink-soft);margin-bottom:6px}
.yt-label-soft{text-transform:none;letter-spacing:.2px;color:var(--yt-ink-soft);opacity:.8}
.yt-field input,.yt-field select,.yt-field textarea{width:100%;background:#0a0a14;border:1px solid #2a3a48;border-radius:8px;
  padding:11px 12px;color:var(--yt-ink);font:inherit;font-size:14px}
.yt-field textarea{resize:vertical;line-height:1.5}
.yt-field input:focus,.yt-field select:focus,.yt-field textarea:focus{outline:none;border-color:var(--yt-cyan)}
.yt-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.yt-modal .yt-form .yt-btn-primary{width:100%;margin-top:6px;padding:12px}
/* Aeon close mark: even 12px inset both sides, quiet shadow box, cyan breath on hover —
   one rule dresses every modal's corner (report, auth, profile, notifs, codes, dashboard…) */
.yt-close{position:absolute;top:12px;right:12px;width:32px;height:32px;box-sizing:border-box;
  display:flex;align-items:center;justify-content:center;padding:0;z-index:5;
  background:rgba(10,10,18,.62);border:1px solid var(--yt-stone-line);border-radius:9px;
  color:var(--yt-ink-soft);font-size:16px;line-height:1;cursor:pointer;
  box-shadow:0 3px 14px rgba(0,0,0,.5);
  transition:color .16s ease,border-color .16s ease,box-shadow .2s ease,transform .16s ease}
.yt-close:hover{color:var(--yt-ink);border-color:var(--yt-cyan);
  box-shadow:0 3px 16px rgba(0,0,0,.55),0 0 12px rgba(69,214,223,.3)}
.yt-close:active{transform:scale(.94)}
@media (prefers-reduced-motion:reduce){.yt-close{transition:none}.yt-close:active{transform:none}}
.yt-msg{font-size:12.5px;border-radius:8px;padding:9px 11px;margin-bottom:12px;line-height:1.5}
.yt-msg-err{background:rgba(220,80,80,.12);border:1px solid #7a3030;color:#e8a0a0}
.yt-msg-ok{background:rgba(69,214,223,.1);border:1px solid #1f6a70;color:var(--yt-cyan)}
.yt-privacy{margin-top:16px;padding-top:14px;border-top:1px solid var(--yt-line);
  font-size:11.5px;color:var(--yt-ink-soft);line-height:1.6}
.yt-privacy b{color:var(--yt-stone);font-weight:600}

/* ---- public profile card + dashboard header ---- */
.yt-p-head{text-align:center;padding:6px 0 2px}
.yt-p-head .yt-avatar{width:72px;height:72px;margin-bottom:10px}
.yt-p-head .yt-h2{margin:0}
.yt-p-since{font-size:12px;color:var(--yt-ink-soft);margin-top:3px;letter-spacing:.3px}
.yt-p-stats{display:flex;justify-content:center;gap:10px;font-size:12.5px;color:var(--yt-ink-soft);
  margin:10px 0 14px;flex-wrap:wrap}
.yt-p-stats b{color:var(--yt-gold);font-weight:600}
.yt-p-dot{opacity:.5}
.yt-p-bio{font-size:13.5px;line-height:1.65;color:var(--yt-ink);text-align:center;
  background:rgba(255,255,255,.02);border:1px solid var(--yt-line);border-radius:10px;
  padding:12px 16px;margin:0 0 12px;white-space:pre-wrap;word-wrap:break-word}
.yt-p-q{text-align:center;margin-bottom:6px}
.yt-p-q-label{font-size:11px;letter-spacing:1px;text-transform:uppercase;color:var(--yt-ink-soft)}
.yt-p-q-chip{display:inline-block;font-size:12px;color:var(--yt-gold);border:1px solid var(--yt-stone-line);
  background:rgba(232,184,75,.08);border-radius:20px;padding:3px 12px;margin-left:6px}

/* ---- member dashboard ---- */
.yt-dash-tabs{margin-top:4px}
.yt-dash-panel{min-height:120px}
.yt-dash-note{font-size:12.5px;color:var(--yt-ink-soft);line-height:1.65;margin:0 0 14px}
.yt-dash-note b{color:var(--yt-ink)}
.yt-dash-sec{padding:16px 0;border-top:1px solid var(--yt-line)}
.yt-dash-sec:first-child{border-top:none;padding-top:4px}
.yt-dash-h{margin:0 0 12px;font-size:12px;letter-spacing:1px;text-transform:uppercase;color:var(--yt-ink-stone);font-weight:600}
.yt-danger-zone .yt-dash-h{color:#e8a0a0}
.yt-dash-connects{font-size:11.5px;color:var(--yt-gold);letter-spacing:.3px}
.yt-bio-count{margin-top:5px;text-align:right}

/* ---- comment list ---- */
.yt-list{display:flex;flex-direction:column;gap:16px}
.yt-empty{color:var(--yt-ink-soft);font-size:13.5px;font-style:italic;padding:10px 0;text-align:center}
.yt-comment{display:flex;gap:12px;padding:14px 16px;background:var(--yt-card);
  border:1px solid var(--yt-line);border-left-width:3px;border-radius:10px}
.yt-comment.s-source{border-left-color:var(--yt-gold)}
.yt-comment.s-insight{border-left-color:var(--yt-cyan)}
.yt-comment.s-speculation{border-left-color:var(--yt-violet)}
.yt-comment.s-question{border-left-color:var(--yt-amber)}
/* THE GILDED SEAM (Gortiva, 2026-07-05): on MIXED surfaces (cross-board feeds,
   search) a member card's edge is the member violet, and a second full-height
   bar — the same idiom carved to a smaller proportion — hugs toward the text
   carrying the thought's home subject (--yt-seam, set inline per item from
   the widget's subjectColor map). Painted as a transparent-gapped strip so it
   rides any backdrop and follows the card's curve. Board pages keep stance
   edges (the informative axis there); these rules sit AFTER the s-* stance
   rules on purpose — equal specificity, later source order wins. */
.yt-comment.yt-seam{border-left-color:var(--violet,#9B5DE5)}
/* (the seam's paint itself is grouped once with the search rows — see the
   .yt-comment.yt-seam,.yt-search-item.yt-seam rule in the search section) */
.yt-comment.yt-hi{animation:yt-halo 2.4s ease}
@keyframes yt-halo{0%,60%{box-shadow:0 0 0 2px var(--yt-gold),0 0 26px -4px rgba(232,184,75,.55)}
  100%{box-shadow:0 0 0 0 transparent}}
.yt-c-main{flex:1;min-width:0}
.yt-c-head{display:flex;align-items:center;gap:8px;margin-bottom:5px;flex-wrap:wrap}
.yt-c-name{font-size:13.5px;color:var(--yt-ink);font-weight:600;background:none;border:none;
  padding:0;cursor:pointer;font-family:inherit}
.yt-c-name:hover{color:var(--yt-cyan)}
.yt-c-staff{font-size:10px;letter-spacing:.08em;text-transform:uppercase;font-weight:700;
  padding:1px 8px;border-radius:20px;border:1px solid}
.yt-c-staff.owner{color:var(--yt-gold);border-color:var(--yt-stone-line);background:rgba(232,184,75,.08)}
.yt-c-staff.mod{color:var(--yt-cyan);border-color:#1f6a70;background:rgba(69,214,223,.06)}
.yt-c-pinned{font-size:10px;letter-spacing:.08em;text-transform:uppercase;font-weight:700;
  padding:1px 8px;border-radius:20px;border:1px solid var(--yt-gold);color:var(--yt-space);
  background:var(--yt-gold)}
.yt-c-stance{font-size:10.5px;letter-spacing:.5px;text-transform:uppercase;padding:1px 7px;border-radius:20px;border:1px solid}
.s-source .yt-c-stance{color:var(--yt-gold);border-color:var(--yt-stone-line)}
.s-insight .yt-c-stance{color:var(--yt-cyan);border-color:#1f6a70}
.s-speculation .yt-c-stance{color:var(--yt-violet);border-color:#4a2d6a}
.s-question .yt-c-stance{color:var(--yt-amber);border-color:#6a4a1c}
.yt-c-time{font-size:11.5px;color:var(--yt-ink-soft);margin-left:auto;text-decoration:none}
a.yt-c-time:hover{color:var(--yt-cyan);text-decoration:underline;text-underline-offset:2px}
.yt-c-body{font-size:14px;line-height:1.6;color:var(--yt-ink);white-space:pre-wrap;word-wrap:break-word}
.yt-c-body b{color:var(--yt-ink);font-weight:700}
.yt-c-body i{color:var(--yt-ink)}
.yt-code{font-family:var(--yt-mono);font-size:12.5px;background:#0a0a14;border:1px solid var(--yt-line);
  border-radius:5px;padding:1px 5px;color:var(--yt-cyan)}
.yt-url{color:var(--yt-cyan);text-decoration:underline;text-underline-offset:2px;word-break:break-all}
.yt-url:hover{color:var(--yt-gold)}
.yt-c-falsifier{margin-top:7px;font-size:12.5px;font-style:italic;color:var(--yt-ink-soft);
  border-left:2px solid var(--yt-violet);padding-left:9px}
.yt-c-falsifier b{font-style:normal;color:var(--yt-violet)}
.yt-chip{display:inline-block;font-size:12px;padding:0 6px;border-radius:5px;text-decoration:none;
  border:1px solid var(--yt-line);color:var(--yt-cyan);background:#0f0f1a;white-space:nowrap}
.yt-chip:hover{border-color:var(--yt-cyan)}

/* ---- connect (the site's "like": a star joins the thread) ---- */
.yt-c-foot{margin-top:9px;display:flex;align-items:center;gap:16px}
.yt-connect{display:inline-flex;align-items:center;gap:6px;background:none;border:none;
  cursor:pointer;color:var(--yt-ink-soft);font:inherit;font-size:12.5px;padding:2px;
  transition:color .15s}
.yt-connect:hover{color:var(--yt-gold)}
.yt-connect.on{color:var(--yt-gold)}
.yt-connect.on svg path{fill-opacity:.85}
.yt-connect svg{width:15px;height:15px}
.yt-connect[data-own="1"]{cursor:default}
.yt-connect[data-own="1"]:hover{color:var(--yt-ink-soft)}
.yt-connect-n{font-weight:600;min-width:1ch;text-align:right}

/* ---- the author's own awaiting-review thoughts ---- */
.yt-mine{margin-bottom:20px;padding:14px 16px;background:rgba(155,93,229,.05);
  border:1px dashed var(--yt-line);border-radius:12px}
.yt-mine-head{font-size:11px;letter-spacing:1px;text-transform:uppercase;color:var(--yt-ink-soft);
  margin-bottom:12px;text-align:center}
.yt-mine-item{padding:10px 0;border-top:1px solid var(--yt-line)}
.yt-mine-item:first-of-type{border-top:none;padding-top:0}
.yt-mine-top{display:flex;align-items:center;gap:8px;margin-bottom:6px;flex-wrap:wrap}
.yt-mine-pill{font-size:10.5px;letter-spacing:.5px;text-transform:uppercase;padding:2px 9px;border-radius:20px;border:1px solid}
.yt-mine-pill.pend{color:var(--yt-amber);border-color:#6a4a1c;background:rgba(239,159,39,.08)}
.yt-mine-pill.rej{color:#e8a0a0;border-color:#7a3030;background:rgba(220,80,80,.08)}
.yt-mine-pill.ok{color:var(--yt-cyan);border-color:#1f6a70;background:rgba(69,214,223,.08)}
.yt-mine-item .yt-c-body{font-size:13.5px;opacity:.85}
.yt-mine-reason{margin-top:6px;font-size:12.5px;color:#e8a0a0}
.yt-mine-reason b{color:#e8a0a0}
.yt-mine-item .yt-c-time{margin-left:auto}
.yt-mine-acts{margin-top:7px;display:flex;gap:14px}

/* ---- inline edit (pending thoughts) ---- */
.yt-edit-area textarea{width:100%;min-height:74px;resize:vertical;background:#0a0a14;
  border:1px solid #2a3a48;border-radius:8px;padding:10px 11px;color:var(--yt-ink);font:inherit;
  font-size:13.5px;line-height:1.5}
.yt-edit-area textarea:focus{outline:none;border-color:var(--yt-cyan)}
.yt-edit-acts{display:flex;gap:8px;margin-top:8px}
.yt-edit-acts .yt-btn{padding:7px 14px;font-size:12.5px}

/* ---- composer ---- */
.yt-composer{position:relative;background:var(--yt-card);border:1px solid var(--yt-line);border-radius:12px;
  padding:16px 18px;margin-bottom:22px}
.yt-composer textarea.yt-c-input{width:100%;min-height:84px;resize:vertical;background:#0a0a14;
  border:1px solid #2a3a48;border-radius:8px;padding:11px 12px;color:var(--yt-ink);font:inherit;
  font-size:14px;line-height:1.5}
.yt-composer textarea.yt-c-input:focus{outline:none;border-color:var(--yt-cyan)}
.yt-stances{display:flex;gap:7px;flex-wrap:wrap;margin:12px 0;justify-content:center}
.yt-stance-pick{font-size:12px;padding:5px 11px;border-radius:20px;cursor:pointer;
  border:1px solid var(--yt-line);background:#0f0f1a;color:var(--yt-ink-soft);user-select:none}
.yt-stance-pick[data-s=source].on{color:var(--yt-gold);border-color:var(--yt-gold);background:rgba(232,184,75,.1)}
.yt-stance-pick[data-s=insight].on{color:var(--yt-cyan);border-color:var(--yt-cyan);background:rgba(69,214,223,.1)}
.yt-stance-pick[data-s=speculation].on{color:var(--yt-violet);border-color:var(--yt-violet);background:rgba(155,93,229,.1)}
.yt-stance-pick[data-s=question].on{color:var(--yt-amber);border-color:var(--yt-amber);background:rgba(239,159,39,.1)}
.yt-composer-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px}
.yt-foot-left{display:flex;align-items:center;gap:10px}
.yt-charcount{font-size:11.5px;color:var(--yt-ink-soft)}
.yt-charcount.over{color:#e8a0a0}
.yt-fmt-hint{margin-top:9px;font-size:11px;color:var(--yt-ink-soft);opacity:.65;text-align:center;letter-spacing:.2px}
.yt-fmt-hint code,.yt-dash-note code{font-family:var(--yt-mono)}

/* ---- emoji picker ---- */
.yt-emoji-btn{background:#0f0f1a;border:1px solid var(--yt-line);border-radius:8px;
  font-size:15px;line-height:1;padding:6px 9px;cursor:pointer;transition:border-color .15s}
.yt-emoji-btn:hover{border-color:var(--yt-gold-deep)}
.yt-emoji-panel{position:absolute;left:14px;bottom:52px;z-index:30;width:min(320px,calc(100% - 28px));
  background:#0d0d18;border:1px solid var(--yt-line);border-radius:12px;padding:10px;
  box-shadow:0 14px 40px -12px rgba(0,0,0,.8);animation:yt-fade .14s ease forwards}
.yt-emoji-tabs{display:flex;gap:4px;flex-wrap:wrap;margin-bottom:8px}
.yt-emoji-tab{background:none;border:1px solid transparent;border-radius:6px;color:var(--yt-ink-soft);
  font:inherit;font-size:10.5px;letter-spacing:.5px;text-transform:uppercase;padding:4px 8px;cursor:pointer}
.yt-emoji-tab.on{color:var(--yt-gold);border-color:var(--yt-stone-line);background:rgba(232,184,75,.08)}
.yt-emoji-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}
.yt-emoji-cell{background:none;border:none;border-radius:8px;font-size:19px;line-height:1;
  padding:7px 0;cursor:pointer;text-align:center}
.yt-emoji-cell:hover{background:rgba(255,255,255,.06)}

@media (max-width:520px){
  .yt-gate{flex-direction:column;align-items:center}
  .yt-gbar-top{flex-direction:column;align-items:center;text-align:center}
  .yt-gbar-actions{justify-content:center;margin-left:0}
  .yt-gbar-note{text-align:center}
  .yt-modal{padding:24px 20px 22px}
  .yt-emoji-grid{grid-template-columns:repeat(6,1fr)}
  .yt-c-foot{gap:10px}
}

/* ---------------- notifications (Aeon P1) ---------------- */
.yt-notif-btn{position:relative}
.yt-notif-count{position:absolute;top:-7px;right:-7px;min-width:17px;height:17px;line-height:17px;
  border-radius:9px;background:var(--yt-gold);color:var(--yt-space);font-size:10.5px;font-weight:700;
  text-align:center;padding:0 4px;box-shadow:0 0 10px rgba(232,184,75,.6)}
.yt-notif-count[hidden]{display:none}
.yt-notifs-list{max-height:min(52vh,420px);overflow:auto;margin:6px 0 14px}
.yt-notif-item{display:flex;gap:10px;align-items:flex-start;padding:10px 4px;
  border-bottom:1px solid var(--yt-line)}
.yt-notif-item:last-child{border-bottom:0}
.yt-notif-ico{flex:none;width:22px;text-align:center;color:var(--yt-gold)}
.yt-notif-main{flex:1;min-width:0;font-size:13.5px;line-height:1.5;color:var(--yt-ink-soft)}
.yt-notif-main b{color:var(--yt-ink)}
.yt-notif-x{display:block;font-size:12px;color:var(--yt-ink-soft);opacity:.85;margin-top:2px;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.yt-notif-meta{flex:none;font-size:11px;color:var(--yt-ink-soft);white-space:nowrap;
  display:flex;flex-direction:column;align-items:flex-end;gap:4px}
.yt-notifs-empty{padding:18px 4px;text-align:center;color:var(--yt-ink-soft);font-size:13.5px}

/* ---- the medallion as universal mark (2026-07-05) ---- */
.yt-ankh-ic{width:14px;height:14px;vertical-align:-3px;display:inline-block;
  filter:drop-shadow(0 0 4px rgba(69,214,223,.45))}
.yt-h2 .yt-ankh-ic{width:20px;height:20px;vertical-align:-3px}
.yt-c-staff .yt-ankh-ic{width:11px;height:11px;vertical-align:-2px}
.yt-connect .yt-ankh-ic{width:13px;height:13px;vertical-align:-3px}
.yt-notif-btn .yt-ankh-ic{width:16px;height:16px;vertical-align:-4px}
.yt-fs-star .yt-ankh-ic{width:32px;height:32px;vertical-align:middle;
  animation:ytFsAnkh 1.6s ease-in-out infinite}
@keyframes ytFsAnkh{0%,100%{filter:drop-shadow(0 0 6px rgba(69,214,223,.5))}
  50%{filter:drop-shadow(0 0 22px rgba(69,214,223,.95)) brightness(1.3)}}
@media (prefers-reduced-motion: reduce){.yt-fs-star .yt-ankh-ic{animation:none}}

/* ---- recovery codes (Aeon P3) ---- */
.yt-codes{display:flex;flex-direction:column;gap:8px;margin:14px 0}
.yt-code-key{display:block;font-size:16px;letter-spacing:2px;text-align:center;padding:9px 12px;
  background:rgba(232,184,75,.07);border:1px solid var(--yt-stone-line);border-radius:9px;
  color:var(--yt-gold);user-select:all}
.yt-lost-wrap{margin:-6px 0 12px;text-align:right}
.yt-lost-wrap .yt-link{font-size:12px}
.yt-rgen-out{margin-top:12px}
.yt-recover-pane .yt-field{margin-bottom:10px}

/* ---- name-color palette picker (Aeon P2.2) ---- */
.yt-color-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:6px}
.yt-color-pick{width:26px;height:26px;border-radius:50%;border:2px solid transparent;cursor:pointer;
  padding:0;transition:transform .15s, box-shadow .15s}
.yt-color-pick:hover{transform:scale(1.15)}
.yt-color-pick.on{border-color:var(--yt-ink);box-shadow:0 0 12px -2px currentColor}
.yt-color-none{background:var(--yt-card);color:var(--yt-ink-soft);font-size:13px;line-height:1}
@media (prefers-reduced-motion:reduce){
  .yt-comment.yt-hi{animation:none;box-shadow:0 0 0 2px var(--yt-gold)}
  .yt-color-pick{transition:none}
  .yt-color-pick:hover{transform:none}
}

/* ---------------- warmth pass (Aeon P2) ---------------- */
a.yt-mention{text-decoration:none}
a.yt-mention:hover{text-decoration:underline}
.yt-quote-btn,.yt-r-quote{opacity:.85}
.yt-first-star{position:fixed;left:50%;top:18%;transform:translate(-50%,-8px) scale(.96);z-index:10000;
  display:flex;align-items:center;gap:14px;padding:16px 22px;border-radius:14px;
  background:rgba(18,18,30,.96);border:1px solid var(--yt-stone-line);
  box-shadow:0 0 44px -6px rgba(232,184,75,.55);opacity:0;pointer-events:none;
  transition:opacity .6s ease, transform .6s ease;max-width:min(92vw,440px)}
.yt-first-star.on{opacity:1;transform:translate(-50%,0) scale(1)}
.yt-fs-star{font-size:30px;color:var(--yt-gold);animation:ytFsPulse 1.6s ease-in-out infinite}
.yt-fs-text{font-size:14px;color:var(--yt-ink);line-height:1.5}
.yt-fs-text span{display:block;font-size:12px;color:var(--yt-ink-soft);margin-top:3px}
@keyframes ytFsPulse{0%,100%{text-shadow:0 0 8px rgba(232,184,75,.5)}50%{text-shadow:0 0 26px rgba(232,184,75,.95)}}
@media (prefers-reduced-motion: reduce){.yt-fs-star{animation:none}.yt-first-star{transition:opacity .3s ease}}

/* ---------------- member reports (Aeon P4) ---------------- */
.yt-report-btn,.yt-r-report{opacity:.65}
.yt-report-btn:hover,.yt-r-report:hover{opacity:1;color:var(--yt-danger)}
.yt-report-intro{font-size:13px;color:var(--yt-ink-soft);line-height:1.6;margin:6px 0 14px}
.yt-report-reason{display:flex;align-items:center;gap:10px;padding:9px 12px;margin:6px 0;
  border:1px solid var(--yt-stone-line);border-radius:10px;cursor:pointer;color:var(--yt-ink);
  font-size:14px;transition:border-color .15s ease}
.yt-report-reason:hover{border-color:var(--yt-cyan)}
.yt-report-reason input{accent-color:var(--yt-cyan)}
.yt-report-txt{width:100%;box-sizing:border-box}
.yt-report-send{margin-top:10px}
.yt-report-done{text-align:center;padding:26px 8px;color:var(--yt-ink);font-size:15px;line-height:1.7}
.yt-report-done img{width:34px;height:34px;filter:drop-shadow(0 0 8px rgba(69,214,223,.5))}

/* ---------------- THE STAR GATE (Aeon P4.5) ---------------- */
.yt-sgate{margin:14px 0;padding:14px;border:1px solid var(--yt-stone-line);border-radius:12px;
  background:rgba(10,10,18,.5);transition:border-color .3s ease,box-shadow .3s ease}
.yt-sgate.lit{border-color:var(--yt-cyan);box-shadow:0 0 16px rgba(69,214,223,.22)}
.yt-sgate-head{color:var(--yt-gold);font-size:14px;font-weight:600;letter-spacing:.4px;
  display:flex;align-items:center;gap:8px}
.yt-sgate-head img{width:18px;height:18px}
.yt-sgate-sub{font-size:12px;color:var(--yt-ink-soft);line-height:1.55;margin:6px 0 10px}
.yt-sgate-sub b{color:var(--yt-gold)}
.yt-sgate-sky{position:relative;width:100%;aspect-ratio:1.5/1;
  /* 1.5:1 is load-bearing: the server stores the ring as an rx = ry/1.5 ellipse
     so it renders as a TRUE circle at exactly this aspect — change one, both */
  background:radial-gradient(ellipse at 50% 40%, rgba(18,18,30,.92), rgba(10,10,18,.96));
  border:1px solid var(--yt-line);border-radius:10px;overflow:hidden}
.yt-sgate-star{position:absolute;width:24px;height:24px;transform:translate(-50%,-50%);
  padding:0;border:none;background:transparent;cursor:pointer}
.yt-sgate-star::before{content:'';position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
  width:var(--d);height:var(--d);border-radius:50%;background:var(--yt-ink);opacity:var(--o);
  box-shadow:0 0 var(--gb) rgba(242,237,224,var(--ga));transition:background .15s ease,box-shadow .15s ease}
.yt-sgate-star.on::before{background:var(--yt-cyan);opacity:1;
  box-shadow:0 0 10px rgba(69,214,223,.85),0 0 20px rgba(69,214,223,.35)}
.yt-sgate.lit .yt-sgate-star.on::before{background:var(--yt-gold);
  box-shadow:0 0 12px rgba(232,184,75,.9),0 0 22px rgba(232,184,75,.4)}
.yt-sgate-star:disabled{cursor:default}
.yt-sgate-msg{min-height:16px;font-size:12px;color:var(--yt-ink-soft);margin-top:8px;line-height:1.5}
.yt-sgate.lit .yt-sgate-msg{color:var(--yt-cyan)}
@media (prefers-reduced-motion:reduce){.yt-sgate,.yt-sgate-star::before{transition:none}}

/* Star Gate: the earned reveal — lines trace the sign in, then it breathes */
.yt-sgate-trace{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.yt-sgate-trace polyline{fill:none;stroke:var(--yt-gold);stroke-width:1.4px;
  vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-linejoin:round;
  filter:drop-shadow(0 0 4px rgba(232,184,75,.75));
  stroke-dasharray:420;stroke-dashoffset:420;animation:ytSgTrace 1.4s ease forwards}
@keyframes ytSgTrace{to{stroke-dashoffset:0}}
.yt-sgate.lit .yt-sgate-sky{animation:ytSgBreathe 3.2s ease-in-out infinite 1.8s}
@keyframes ytSgBreathe{
  0%,100%{box-shadow:inset 0 0 18px rgba(232,184,75,.08)}
  50%{box-shadow:inset 0 0 34px rgba(232,184,75,.22)}
}
.yt-sgate.lit .yt-sgate-star.on::before{animation:ytSgStarBreathe 3.2s ease-in-out infinite 1.8s}
@keyframes ytSgStarBreathe{
  0%,100%{box-shadow:0 0 9px rgba(232,184,75,.75)}
  50%{box-shadow:0 0 16px rgba(232,184,75,1),0 0 28px rgba(232,184,75,.45)}
}
@media (prefers-reduced-motion:reduce){
  .yt-sgate-trace polyline{animation:none;stroke-dashoffset:0}
  .yt-sgate.lit .yt-sgate-sky,.yt-sgate.lit .yt-sgate-star.on::before{animation:none}
}

/* Aeon spacing: the section header breathes evenly below whatever precedes it
   (composer or the signed-out note) — one rule, every board/feed/doc page */
.yt-head{margin-top:26px}

/* password visibility (the little eye) + the confirm pair */
.yt-pw-wrap{position:relative}
.yt-pw-wrap input{width:100%;padding-right:40px}
.yt-pw-eye{position:absolute;right:6px;top:50%;transform:translateY(-50%);width:28px;height:28px;
  display:flex;align-items:center;justify-content:center;padding:0;background:none;border:none;
  color:var(--yt-ink-soft);cursor:pointer;border-radius:7px}
.yt-pw-eye:hover{color:var(--yt-ink)}
.yt-pw-eye.on{color:var(--yt-cyan)}

/* modal scrollbar: thin, themed, inset from the card's rounded ends,
   never overlapping content OR the close mark (Aeon polish, Gortiva's catches) */
/* the thin stone bar itself — ONE idiom, grouped across every widget scroll
   surface (modal body, Circle log, presence roster); zero visual change */
.yt-modal-body,.yt-ag-log,.yt-roster-list{scrollbar-width:thin;scrollbar-color:rgba(90,61,28,.9) transparent}
.yt-modal-body::-webkit-scrollbar,.yt-ag-log::-webkit-scrollbar,.yt-roster-list::-webkit-scrollbar{width:5px}
.yt-modal-body::-webkit-scrollbar-thumb,.yt-ag-log::-webkit-scrollbar-thumb,.yt-roster-list::-webkit-scrollbar-thumb{background:rgba(90,61,28,.9);border-radius:99px}
/* per-surface details stay local */
.yt-modal-body{padding-right:10px}
.yt-modal-body::-webkit-scrollbar-track{background:transparent;margin:34px 0 18px}
.yt-modal-body::-webkit-scrollbar-thumb:hover{background:var(--yt-gold-deep)}

/* field hints (always-on defaults under the signup fields) */
.yt-hint{font-size:11px;color:var(--yt-ink-soft);opacity:.75;margin-top:5px;text-align:left;line-height:1.5}

/* premature-submit guidance: the breathing ankh beside whatever still needs
   attention — the notification glow, borrowed deliberately (same language) */
.yt-need-mark{display:inline-flex;align-items:center;margin-right:7px;vertical-align:-2px}
.yt-need-mark img{width:13px;height:13px;border-radius:50%;
  filter:drop-shadow(0 0 5px rgba(69,214,223,.45));
  animation:ytNeedPulse 2.4s ease-in-out infinite}
@keyframes ytNeedPulse{
  0%,100%{filter:drop-shadow(0 0 4px rgba(69,214,223,.35))}
  50%{filter:drop-shadow(0 0 12px rgba(69,214,223,.95)) brightness(1.3)}
}
.yt-sgate-need{border-color:rgba(69,214,223,.55);
  animation:ytNeedBox 2.4s ease-in-out infinite}
@keyframes ytNeedBox{
  0%,100%{box-shadow:0 0 6px rgba(69,214,223,.15)}
  50%{box-shadow:0 0 16px rgba(69,214,223,.4)}
}
.yt-sgate-need .yt-sgate-head img{animation:ytNeedPulse 2.4s ease-in-out infinite}
@media (prefers-reduced-motion:reduce){
  .yt-need-mark img,.yt-sgate-need,.yt-sgate-need .yt-sgate-head img{animation:none;
    filter:drop-shadow(0 0 8px rgba(69,214,223,.8))}
}

/* the not-yet-ready Create button: faded but still clickable — the click
   answers with guidance instead of silence */
.yt-btn-unready{opacity:.45;filter:saturate(.55);cursor:not-allowed}

/* ---------------- sitewide popup format (Aeon, Gortiva 2026-07-05) ---------------- */
/* one scroll bar at a time: the page holds still while any popup is open */
html.yt-noscroll{overflow:hidden}
/* an overlay pane (ground rules, recover code) fully COVERS the form beneath —
   locking the body kills its scroll so nothing (captcha, Create button, privacy
   note) can be dragged up from underneath; the pane's own well is the one bar */
.yt-modal-body.yt-body-locked{overflow:hidden}
/* headers and their subtitles center in EVERY popup; the intro/closing prose in
   an overlay pane centers too; labels, field names, and the rules LIST stay left */
.yt-modal .yt-h2,.yt-modal h2{text-align:center}
.yt-modal .yt-sub{text-align:center}
.yt-modal .yt-rules-h{text-align:center}
.yt-rules-p{text-align:center}
.yt-sgate-head{justify-content:center}
/* register-only furniture can NEVER surface on the Sign-in view — CSS belt
   under the JS suspenders (author styles must not defeat [hidden], F17 lesson) */
.yt-form[data-mode=login] .yt-sgate,
.yt-form[data-mode=login] .yt-pw2-field,
.yt-form[data-mode=login] .yt-reg-hint,
.yt-form[data-mode=login] .yt-rules-wrap{display:none!important}

/* ---------------- search the conversation (Aeon P5) ---------------- */
.yt-search{margin:0 0 22px}
.yt-search-row{display:flex;gap:10px}
.yt-search-in{flex:1;min-width:0;background:#0d0d18;border:1px solid var(--yt-line);border-radius:9px;
  padding:10px 14px;color:var(--yt-ink);font:inherit;font-size:14px}
.yt-search-in:focus{outline:none;border-color:var(--yt-cyan)}
.yt-search-note{font-size:11px;color:var(--yt-ink-soft);opacity:.75;margin-top:5px;text-align:left}
.yt-search-note a{color:var(--yt-cyan);text-decoration:none}
.yt-search-note a:hover{text-decoration:underline}
.yt-search-out{margin-top:12px;border:1px solid var(--yt-line);border-radius:12px;
  background:var(--yt-card);padding:10px 12px}
.yt-search-h{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--yt-gold);
  margin:8px 4px 6px;font-weight:700;text-align:left}
.yt-search-item{display:block;padding:9px 10px;border-radius:9px;text-decoration:none;
  border-bottom:1px solid rgba(255,255,255,.04);text-align:left}
.yt-search-item:last-child{border-bottom:none}
.yt-search-item:hover{background:rgba(69,214,223,.06)}
/* search rows speak the card standard too: thoughts wear the member violet +
   the gilded seam; member-theory rows wear the theory amber (the law: theories
   are always the brighter orange) */
.yt-search-item.yt-seam{border-left:3px solid var(--violet,#9B5DE5);padding-left:15px}
/* the gilded seam's paint — ONE stack for both surfaces (board cards + search
   rows); these declarations were formerly duplicated in each rule */
.yt-comment.yt-seam,.yt-search-item.yt-seam{
  background-image:linear-gradient(90deg,transparent 0,transparent 2px,var(--yt-seam,transparent) 2px,var(--yt-seam,transparent) 4px,transparent 4px);
  background-repeat:no-repeat;background-size:4px 100%}
.yt-search-item.yt-th-edge{border-left:3px solid var(--amber,#EF9F27);padding-left:15px}
.yt-search-item .yt-chip{margin-right:8px}
.yt-search-snip{color:var(--yt-ink);font-size:13px;line-height:1.55}
.yt-search-snip b{color:var(--yt-gold)}
.yt-search-meta{display:block;color:var(--yt-ink-soft);font-size:11.5px;margin-top:3px}
.yt-search-more-slot{text-align:center;padding:8px 0 4px}

/* ---------------- return signals (Aeon P6) ---------------- */
.yt-new-chip{display:inline-flex;align-items:center;gap:5px;font-size:10.5px;letter-spacing:.06em;
  text-transform:uppercase;font-weight:700;color:var(--yt-cyan,#45D6DF);
  border:1px solid rgba(69,214,223,.4);border-radius:20px;padding:2px 9px;
  background:rgba(69,214,223,.07);margin-left:8px;vertical-align:2px;white-space:nowrap}
.yt-new-chip img{width:12px;height:12px}
.yt-rss{display:inline-flex;align-items:center;color:var(--yt-ink-soft);margin-left:4px}
.yt-rss:hover{color:var(--yt-amber)}
.yt-rss svg{width:14px;height:14px}

/* ---------------- THE AGORA — the live room (Aeon P8) ---------------- */
.yt-agora{max-width:820px;margin-left:auto;margin-right:auto}
.yt-ag-head{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:10px}
.yt-ag-presence{display:inline-flex;align-items:center;gap:7px;color:var(--yt-gold);font-size:13px;
  font-weight:700;letter-spacing:.05em}
.yt-ag-presence img{width:15px;height:15px}
.yt-ag-names{color:var(--yt-ink-soft);font-size:12px}
.yt-ag-log{height:min(56vh,520px);overflow-y:auto;background:var(--yt-card);
  border:1px solid var(--yt-line);border-radius:12px;padding:12px 14px}
/* thin-bar idiom grouped with .yt-modal-body (see the modal scrollbar block) */
.yt-ag-log::-webkit-scrollbar-track{background:transparent;margin:12px 0}
.yt-ag-row{display:flex;align-items:baseline;gap:8px;padding:4px 2px;font-size:13.5px;line-height:1.55}
.yt-ag-row:hover{background:rgba(255,255,255,.02);border-radius:6px}
.yt-ag-time{flex:none;color:var(--yt-ink-stone);font-size:10.5px;font-family:var(--yt-mono)}
.yt-ag-name{flex:none;color:var(--yt-ink)}
.yt-ag-row .yt-c-staff{flex:none}
.yt-ag-body{color:var(--yt-ink);min-width:0;overflow-wrap:anywhere}
.yt-ag-del{flex:none;margin-left:auto;background:none;border:none;color:var(--yt-ink-soft);
  cursor:pointer;font-size:14px;opacity:0;padding:0 4px;border-radius:6px}
.yt-ag-row:hover .yt-ag-del{opacity:.8}
.yt-ag-del:hover{color:#e8a0a0;opacity:1}
.yt-ag-day{text-align:center;color:var(--yt-ink-stone);font-size:10.5px;letter-spacing:.14em;
  text-transform:uppercase;margin:10px 0 6px}
.yt-ag-whisper{color:var(--yt-ink-stone);font-size:11.5px;font-style:italic;padding:2px 2px}
.yt-ag-foot{margin-top:10px}
.yt-ag-state{color:var(--yt-amber);font-size:12.5px;margin-bottom:8px}
.yt-ag-composer{display:flex;gap:10px}
.yt-ag-in{flex:1;min-width:0;background:#0d0d18;border:1px solid var(--yt-line);border-radius:9px;
  padding:10px 14px;color:var(--yt-ink);font:inherit;font-size:14px}
.yt-ag-in:focus{outline:none;border-color:var(--yt-cyan)}
.yt-ag-in:disabled{opacity:.55}
.yt-ag-hold{text-align:center;padding:44px 20px;border:1px solid var(--yt-stone-line);
  border-radius:14px;background:var(--yt-card)}
.yt-ag-hold img{width:34px;height:34px;filter:drop-shadow(0 0 10px rgba(69,214,223,.45))}
.yt-ag-hold h3{color:var(--yt-gold);margin:12px 0 8px;font-size:19px;letter-spacing:.04em}
.yt-ag-hold p{color:var(--yt-ink-soft);font-size:13.5px;line-height:1.7;max-width:46ch;margin:0 auto 16px}

/* ---------------- Aeon P11: THE ROUND — the debate room ----------------
   Rides the Circle's yt-ag-* bones for the log and composer; everything
   round-specific (stage banner, roster, lobby, clocks) lives here. */
.yt-rd-head{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:10px}
.yt-rd-stage{margin-bottom:10px}
.yt-rd-banner{border:1px solid var(--yt-stone-line);border-radius:14px;background:var(--yt-card);
  padding:18px 20px;text-align:center}
.yt-rd-banner.live{border-color:rgba(69,214,223,.35)}
.yt-rd-kicker{display:block;color:var(--yt-ink-stone);font-size:11px;letter-spacing:.16em;
  text-transform:uppercase;margin-bottom:8px}
.yt-rd-banner.live .yt-rd-kicker{color:var(--yt-cyan)}
.yt-rd-q{color:var(--yt-gold);margin:0 0 12px;font-size:18px;line-height:1.45;letter-spacing:.02em}
.yt-rd-roster{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap}
.yt-rd-speaker{display:inline-flex;align-items:center;gap:7px;padding:5px 13px;border-radius:99px;
  border:1px solid var(--yt-line);color:var(--spk,var(--yt-ink));font-size:13.5px;font-weight:700}
.yt-rd-speaker.turn{border-color:var(--yt-cyan);box-shadow:0 0 12px rgba(69,214,223,.25)}
.yt-rd-speaker.waiting{opacity:.5}
.yt-rd-turnclock{color:var(--yt-cyan);font-family:var(--yt-mono);font-size:12px;font-weight:400}
.yt-rd-endclock{font-family:var(--yt-mono)}
.yt-rd-vs{color:var(--yt-ink-stone);font-size:11px;letter-spacing:.1em;text-transform:uppercase}
.yt-rd-sub{color:var(--yt-ink-soft);font-size:12.5px;margin:10px 0 0}
.yt-rd-clockrow{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:8px;
  color:var(--yt-ink-soft);font-size:12.5px}
.yt-rd-clockrow label{display:inline-flex;align-items:center;gap:8px}
.yt-rd-clockrow select{background:#0d0d18;border:1px solid var(--yt-line);border-radius:8px;
  color:var(--yt-ink);font:inherit;font-size:12.5px;padding:5px 8px}
.yt-rd-clockpend{color:var(--yt-cyan)}
/* the lobby: a free room */
.yt-rd-open{text-align:center;padding:26px 20px 20px;border:1px solid var(--yt-stone-line);
  border-radius:14px;background:var(--yt-card);margin-bottom:14px}
.yt-rd-open img{width:30px;height:30px;filter:drop-shadow(0 0 10px rgba(69,214,223,.45))}
.yt-rd-open h3{color:var(--yt-gold);margin:10px 0 8px;font-size:18px;letter-spacing:.04em}
.yt-rd-open p{color:var(--yt-ink-soft);font-size:13.5px;line-height:1.7;max-width:52ch;margin:0 auto}
.yt-rd-sect{margin:0 0 14px}
.yt-rd-sect h4{color:var(--yt-ink-stone);font-size:11.5px;letter-spacing:.14em;
  text-transform:uppercase;margin:0 0 8px}
.yt-rd-card{display:flex;align-items:center;gap:12px;flex-wrap:wrap;border:1px solid var(--yt-line);
  border-left:3px solid var(--yt-cyan);
  border-radius:11px;background:var(--yt-card);padding:11px 14px;margin-bottom:8px}
.yt-rd-topic{color:var(--yt-ink);font-size:13.5px;font-weight:700;min-width:0}
.yt-rd-sub2,.yt-rd-card .yt-rd-sub{margin:0}
.yt-rd-card .yt-rd-sub{flex:1 1 auto}
.yt-rd-acts{display:inline-flex;gap:8px;margin-left:auto}
/* ---------------- Aeon P12d: the spark, and the table that grows ---------------- */
.yt-rd-witness{margin-bottom:8px}
.yt-rd-spark{display:inline-flex;align-items:center;gap:7px;padding:7px 16px;font-size:13px;
  border:1px solid rgba(69,214,223,.35);background:rgba(69,214,223,.06);color:var(--yt-cyan)}
.yt-rd-spark:hover{background:rgba(69,214,223,.12);border-color:rgba(69,214,223,.6)}
.yt-rd-spark img{width:14px;height:14px}
.yt-rd-spark.on{border-color:var(--yt-gold);background:rgba(232,184,75,.1);color:var(--yt-gold);
  box-shadow:0 0 14px -2px rgba(232,184,75,.4)}
.yt-rd-spark.on img{filter:drop-shadow(0 0 6px rgba(232,184,75,.7))}
/* a raised hand in the roster — the glowing medallion */
.yt-roster-spark{margin-left:auto;display:inline-flex}
.yt-roster-spark img{width:14px;height:14px;filter:drop-shadow(0 0 5px rgba(232,184,75,.75));
  animation:sparkbreathe 2.2s ease-in-out infinite}
@keyframes sparkbreathe{0%,100%{opacity:1}50%{opacity:.5}}
.yt-pop-inv{text-align:center;justify-content:center}
@media (prefers-reduced-motion: reduce){.yt-roster-spark img{animation:none}}

/* ---------------- Aeon P12c: the member card, the gauntlet, the countdown ---------------- */
.yt-nameclick,.yt-roster-row.clickable{cursor:pointer}
.yt-nameclick:hover,.yt-roster-row.clickable:hover .yt-roster-name{text-decoration:underline;
  text-decoration-color:rgba(232,184,75,.5);text-underline-offset:3px}
.yt-pop{position:absolute;z-index:1200;width:250px;background:var(--yt-card);
  border:1px solid var(--yt-stone-line);border-radius:13px;padding:14px 16px;
  box-shadow:0 12px 40px -12px rgba(0,0,0,.85)}
.yt-pop-name{font-weight:700;font-size:14.5px;color:var(--yt-ink);margin-bottom:11px;
  display:flex;align-items:center;gap:7px}
.yt-pop-acts{display:flex;flex-direction:column;gap:8px}
.yt-pop-acts .yt-btn{text-align:center;justify-content:center}
.yt-ch-sub{color:var(--yt-ink-soft);font-size:13px;line-height:1.65;margin:0 0 14px}
.yt-ch-done{text-align:center;padding:14px 6px}
.yt-ch-done p{color:var(--yt-ink-soft);font-size:13.5px;line-height:1.7;max-width:44ch;margin:0 auto 16px}
/* P12c.1: the call that finds you where you sit */
.yt-callin-modal .yt-ch-sub{text-align:center;margin-bottom:8px}
.yt-callin-topic{text-align:center;color:var(--yt-gold);font-size:17px;font-weight:700;
  line-height:1.5;margin:0 0 8px;text-shadow:0 0 16px rgba(232,184,75,.3)}
.yt-callin-terms{text-align:center;color:var(--yt-ink-stone);font-size:12px;
  letter-spacing:.08em;text-transform:uppercase;margin:0 0 18px}
.yt-callin-acts{display:flex;gap:12px;justify-content:center;margin-bottom:14px}
.yt-callin-note{text-align:center;color:var(--yt-ink-soft);font-size:12px;font-style:italic;margin:0}
/* the Round's pulse inside the Circle */
.yt-cl-roundstrip{display:block;width:100%;text-align:left;font:inherit;font-size:12.5px;
  cursor:pointer;color:var(--yt-cyan);background:rgba(69,214,223,.06);
  border:1px solid rgba(69,214,223,.3);border-radius:10px;padding:8px 14px;margin-bottom:10px}
.yt-cl-roundstrip:hover{background:rgba(69,214,223,.11);border-color:rgba(69,214,223,.5)}
.yt-cl-roundstrip img{width:13px;height:13px;vertical-align:-2px;margin-right:4px}
.yt-cl-roundstrip[hidden]{display:none}
/* the tab feels the pulse (P13: the split quick-switch feels it too — one rule) */
.yt-lw-tab.pulse::after,.yt-lw-qbtn.pulse::after{content:'';display:inline-block;width:7px;height:7px;margin-left:8px;
  border-radius:50%;background:var(--yt-cyan);box-shadow:0 0 8px rgba(69,214,223,.8);
  vertical-align:2px;animation:lwtabpulse 2s ease-in-out infinite}
@keyframes lwtabpulse{0%,100%{opacity:1}50%{opacity:.35}}
/* the countdown: a monumental numeral over the set table */
.yt-rd-banner.counting{border-color:rgba(69,214,223,.4)}
.yt-rd-count{margin:14px 0 4px}
.yt-rd-startclock{display:block;font-size:56px;line-height:1;font-weight:700;color:var(--yt-gold);
  font-family:var(--yt-mono);text-shadow:0 0 26px rgba(232,184,75,.5);
  animation:rdcountbreathe 1s ease-in-out infinite}
@keyframes rdcountbreathe{0%,100%{transform:scale(1)}50%{transform:scale(1.06)}}
.yt-rd-count-sub{display:block;margin-top:8px;font-size:11px;letter-spacing:.22em;
  text-transform:uppercase;color:var(--yt-cyan)}
/* the flash when the table opens */
.yt-rd-open-flash{animation:rdopenflash 1.6s ease-out 1}
@keyframes rdopenflash{0%{box-shadow:0 0 0 rgba(232,184,75,0)}
  25%{box-shadow:0 0 44px -6px rgba(232,184,75,.75)}100%{box-shadow:0 0 0 rgba(232,184,75,0)}}
@media (prefers-reduced-motion: reduce){
  .yt-lw-tab.pulse::after,.yt-lw-qbtn.pulse::after,.yt-rd-startclock,.yt-rd-open-flash{animation:none}
}

/* ---------------- Aeon P12b: the presence panel ----------------
   Everyone in the room, at the log's side. Slides closed (remembered);
   the head button brings it back; the log flexes to whatever is left.
   Small screens get an overlay drawer instead of a side column. */
.yt-room-flex{display:flex;gap:12px;align-items:stretch;position:relative}
.yt-room-flex .yt-ag-log{flex:1;min-width:0}
.yt-room-main{flex:1;min-width:0;display:flex;flex-direction:column}
.yt-room-main .yt-ag-log{flex:none}
.yt-roster{width:200px;flex:none;border:1px solid var(--yt-line);border-radius:12px;
  background:var(--yt-card);display:flex;flex-direction:column;overflow:hidden;
  transition:width .3s,opacity .3s,border-color .3s}
.yt-roster.closed{width:0;opacity:0;border-color:transparent;pointer-events:none}
.yt-roster-head{display:flex;align-items:center;justify-content:space-between;gap:8px;
  padding:9px 12px;border-bottom:1px solid var(--yt-line);flex:none}
.yt-roster-title{font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;
  color:var(--yt-ink-stone);white-space:nowrap}
.yt-roster-hide{background:none;border:none;color:var(--yt-ink-soft);cursor:pointer;
  font-size:15px;padding:0 2px;border-radius:6px}
.yt-roster-hide:hover{color:var(--yt-ink)}
.yt-roster-list{overflow-y:auto;padding:8px 12px}
/* thin-bar idiom grouped with .yt-modal-body (see the modal scrollbar block) */
/* P12d.1: Debating / Observers sections in the Round's roster */
.yt-roster-sect{font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--yt-ink-stone);
  margin:10px 0 4px;padding-bottom:3px;border-bottom:1px solid var(--yt-line);display:flex;justify-content:space-between}
.yt-roster-sect:first-child{margin-top:0}
.yt-roster-sect b{color:var(--yt-gold);font-weight:700}
.yt-roster-row.joining{opacity:.6}
.yt-roster-row.joining .yt-roster-mark.joining{color:var(--yt-cyan);margin-left:auto;letter-spacing:.1em}
.yt-roster-row{display:flex;align-items:center;gap:7px;padding:4px 0;font-size:13px;white-space:nowrap}
.yt-roster-row .yt-roster-name{overflow:hidden;text-overflow:ellipsis;color:var(--yt-ink)}
.yt-roster-mark{color:var(--yt-ink-stone);font-size:11px;margin-left:auto}
.yt-roster-mark.turn{color:var(--yt-cyan);text-shadow:0 0 8px rgba(69,214,223,.5)}
.yt-roster-empty{color:var(--yt-ink-soft);font-size:12px;font-style:italic}
.yt-roster-show{padding:5px 12px;font-size:12px;display:inline-flex;gap:6px;align-items:center;margin-left:auto}
.yt-roster-show[hidden]{display:none}   /* the F17 lesson: author display beats [hidden] */
.yt-ag-head,.yt-rd-head{min-height:30px}
@media (prefers-reduced-motion: reduce){.yt-roster{transition:none}}
@media (max-width:640px){
  .yt-roster{position:absolute;top:0;right:0;bottom:0;z-index:5;width:190px;
    box-shadow:-10px 0 26px rgba(0,0,0,.55);border-radius:12px}
  .yt-roster.closed{width:0;box-shadow:none}
}

/* ---------------- Aeon P12a: THE LIVE WING — two rooms, one fused surface ----------------
   Folder-tab idiom: the active tab shares the panel's translucent ground and
   its bottom border opens into the frame (the seam fuses); switching morphs
   the panel's top corners toward the active tab. Reduced-motion = instant. */
.yt-livewing{margin-bottom:20px}
.yt-lw-tabs{display:flex;gap:8px;padding:0 16px;position:relative;z-index:2}
.yt-lw-tab{font:inherit;font-size:14px;letter-spacing:.07em;font-weight:700;cursor:pointer;
  padding:11px 28px 10px;color:var(--yt-ink-soft);background:rgba(18,18,30,.45);
  border:1px solid var(--yt-line);border-bottom:1px solid var(--yt-stone-line);
  border-radius:13px 13px 0 0;margin-bottom:-1px;
  transition:background .25s,color .25s,border-color .25s,text-shadow .25s}
.yt-lw-tab:hover{color:var(--yt-ink)}
.yt-lw-tab.on{color:var(--yt-gold);background:rgba(18,18,30,.88);
  border-color:var(--yt-stone-line);border-bottom-color:transparent;
  text-shadow:0 0 12px rgba(232,184,75,.35)}
.yt-lw-panel{position:relative;z-index:1;border:1px solid var(--yt-stone-line);
  background:rgba(18,18,30,.88);padding:16px;border-radius:14px;
  transition:border-radius .3s;box-shadow:0 6px 30px -18px rgba(0,0,0,.8)}
.yt-lw-panel[data-active="circle"]{border-top-left-radius:0}
.yt-lw-panel[data-active="round"]{border-top-left-radius:14px}
@media (prefers-reduced-motion: reduce){
  .yt-lw-tab,.yt-lw-panel{transition:none}
}
@media (max-width:520px){
  .yt-lw-tab{padding:10px 0;flex:1;text-align:center}
  .yt-lw-tabs{padding:0 10px}
}

/* the call composer */
.yt-rd-call .yt-rd-topicin,.yt-rd-call .yt-rd-namesin{width:100%;background:#0d0d18;
  border:1px solid var(--yt-line);border-radius:9px;padding:10px 14px;color:var(--yt-ink);
  font:inherit;font-size:14px;margin-bottom:10px}
.yt-rd-call .yt-rd-topicin:focus,.yt-rd-call .yt-rd-namesin:focus{outline:none;border-color:var(--yt-cyan)}
.yt-rd-opts{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:10px;color:var(--yt-ink-soft);font-size:12.5px}
.yt-rd-opts label{display:inline-flex;align-items:center;gap:8px}
.yt-rd-opts select{background:#0d0d18;border:1px solid var(--yt-line);border-radius:8px;
  color:var(--yt-ink);font:inherit;font-size:12.5px;padding:6px 9px}
.yt-rd-callrow{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.yt-rd-callmsg{font-size:12.5px}
.yt-rd-callmsg.ok{color:var(--yt-cyan)}
.yt-rd-callmsg.err{color:var(--yt-amber)}

/* ---------------- Aeon P13: THE ROOM DIALS ----------------
   Per-room settings (drawer inside the room card), fullscreen, the Latest
   pill, Observer Mode, the Pinned Topic, and the wing's Split View. All
   dials default to the rooms exactly as they stood — these rules only
   speak when a visitor turns one. */

/* the rooms are their own positioning frames (drawer, pill, exit mark) */
.yt-agora,.yt-round{position:relative}

/* header tools: the gear and the expand mark, a quiet right-aligned pair */
.yt-lv-tools{display:inline-flex;gap:8px;margin-left:auto;align-items:center}
.yt-lv-icon{width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;
  background:#0f0f1a;border:1px solid var(--yt-line);border-radius:8px;color:var(--yt-ink-soft);
  cursor:pointer;padding:0;transition:border-color .15s,color .15s}
.yt-lv-icon:hover{border-color:var(--yt-gold-deep);color:var(--yt-gold)}
.yt-lv-icon svg{width:15px;height:15px}
.yt-lv-icon[aria-expanded="true"]{color:var(--yt-cyan);border-color:rgba(69,214,223,.5)}

/* live-presence glow: the head medallion breathes while the room is inhabited */
.yt-ag-presence.yt-lv-on img{animation:ytLvGlow 3s ease-in-out infinite}
@keyframes ytLvGlow{0%,100%{filter:drop-shadow(0 0 4px rgba(69,214,223,.4))}
  50%{filter:drop-shadow(0 0 12px rgba(69,214,223,.95)) brightness(1.25)}}
@media (prefers-reduced-motion:reduce){
  .yt-ag-presence.yt-lv-on img{animation:none;filter:drop-shadow(0 0 8px rgba(69,214,223,.75))}
}

/* the settings drawer — a panel inside the room card, wearing the Aeon close mark */
.yt-lv-set{position:absolute;top:44px;right:0;z-index:80;width:min(340px,100%);
  background:var(--yt-card);border:1px solid var(--yt-stone-line);border-radius:14px;
  padding:16px 18px 12px;box-shadow:0 18px 50px -14px rgba(0,0,0,.85);
  animation:ytSetIn .18s ease forwards}
@keyframes ytSetIn{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.yt-lv-set{animation:none}}
.yt-set-h{margin:0 0 6px;font-size:11px;letter-spacing:.16em;text-transform:uppercase;
  color:var(--yt-gold);font-weight:700}
.yt-set-row{display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding:9px 0;border-bottom:1px solid rgba(255,255,255,.05)}
.yt-set-row:last-of-type{border-bottom:none}
.yt-set-lab{font-size:12.5px;color:var(--yt-ink-soft);letter-spacing:.02em}
.yt-set-seg{display:inline-flex;gap:4px;flex:none}
.yt-set-opt{font:inherit;font-size:11px;letter-spacing:.04em;padding:4px 10px;border-radius:16px;
  border:1px solid var(--yt-line);background:#0f0f1a;color:var(--yt-ink-soft);cursor:pointer;
  transition:border-color .15s,color .15s}
.yt-set-opt:hover{border-color:var(--yt-gold-deep);color:var(--yt-gold)}
.yt-set-opt.on{color:var(--yt-gold);border-color:var(--yt-stone-line);background:rgba(232,184,75,.08)}
.yt-set-note{margin:8px 0 0;font-size:10.5px;color:var(--yt-ink-soft);opacity:.7;text-align:center}

/* what the dials turn: Text Size, Density, Timestamps */
.yt-ts-small .yt-ag-row{font-size:12.5px}
.yt-ts-small .yt-ag-time{font-size:9.5px}
.yt-ts-large .yt-ag-row{font-size:15px}
.yt-ts-large .yt-ag-time{font-size:11.5px}
.yt-dn-compact .yt-ag-row{padding:1px 2px}
.yt-tm-off .yt-ag-time{display:none}
/* multi-line chat thoughts (Shift+Enter) render their line breaks */
.yt-ag-body{white-space:pre-wrap}
textarea.yt-ag-in{resize:none;line-height:1.4;height:40px;min-height:40px;max-height:110px;
  overflow-y:auto;display:block}

/* the Latest pill — Auto-Follow paused by a scroll-up, or switched off
   (opacity-only motion: passes reduced-motion by the standing exemption) */
.yt-lv-latest{position:absolute;left:50%;bottom:14px;transform:translateX(-50%);z-index:20;
  font:inherit;font-size:12px;letter-spacing:.05em;color:var(--yt-cyan);cursor:pointer;
  background:rgba(10,10,18,.9);border:1px solid rgba(69,214,223,.45);border-radius:20px;
  padding:6px 14px;box-shadow:0 6px 18px rgba(0,0,0,.55);opacity:0;pointer-events:none;
  transition:opacity .2s ease}
.yt-lv-latest.on{opacity:1;pointer-events:auto}
.yt-lv-latest:hover{background:rgba(69,214,223,.12)}

/* Observer Mode (Round): the composer rests, the log breathes taller */
.yt-round.yt-obs .yt-rd-foot .yt-ag-composer,
.yt-round.yt-obs .yt-rd-state{display:none}
.yt-round.yt-obs .yt-ag-log{height:min(64vh,620px)}

/* Pinned Topic (Round): the question rides the top of the scrolling log
   (the -12px margins cancel the log's padding, so at rest it already sits
   at the scrollport edge; top:0 keeps it there, never clipped) */
.yt-rd-pin{position:sticky;top:0;z-index:10;margin:-12px -14px 10px;padding:8px 14px;
  background:rgba(13,13,24,.97);border-bottom:1px solid var(--yt-line);
  color:var(--yt-gold);font-size:12px;font-weight:700;letter-spacing:.03em;text-align:center}

/* fullscreen — native when granted, the fixed fallback otherwise; both wear
   deep space so the lone room reads as intentional. The width cap rides the
   room's INNER pieces, never the root: a clamped fullscreen root would
   left-anchor (the UA zeroes its margins), and the fallback frame must span
   the viewport regardless. */
.yt-root[data-room]:fullscreen{background:var(--yt-space);margin:0;overflow:auto;
  padding:26px clamp(16px,4vw,48px)}
.yt-root[data-room]:fullscreen::backdrop{background:var(--space,#0A0A12)}
.yt-fullwin{position:fixed;inset:0;z-index:900;background:var(--yt-space);margin:0;
  overflow:auto;padding:26px clamp(16px,4vw,48px);border-radius:0;overscroll-behavior:contain}
.yt-root[data-room].yt-isfull{max-width:none}
.yt-isfull .yt-ag-head,.yt-isfull .yt-rd-head,.yt-isfull .yt-cl-roundstrip,
.yt-isfull .yt-room-flex,.yt-isfull .yt-rd-stage,.yt-isfull .yt-ag-foot{
  max-width:1100px;margin-left:auto;margin-right:auto}
.yt-lv-fsx{position:fixed;top:12px;right:12px;z-index:9600}
.yt-agora.yt-isfull .yt-ag-log{height:calc(100vh - 240px)}
.yt-round.yt-isfull .yt-ag-log{height:calc(100vh - 380px)}
.yt-round.yt-isfull.yt-obs .yt-ag-log{height:calc(100vh - 300px)}

/* the wing's view bar + SPLIT VIEW */
.yt-lw-viewbar{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin:0 0 12px}
.yt-lw-views{display:inline-flex;gap:4px;border:1px solid var(--yt-line);border-radius:10px;
  padding:3px;background:rgba(18,18,30,.45)}
.yt-lw-viewbtn{font:inherit;font-size:11.5px;letter-spacing:.05em;padding:5px 13px;border-radius:8px;
  border:1px solid transparent;background:none;color:var(--yt-ink-soft);cursor:pointer;
  transition:color .15s,border-color .15s,background .15s}
.yt-lw-viewbtn:hover{color:var(--yt-ink)}
.yt-lw-viewbtn.on{color:var(--yt-gold);border-color:var(--yt-stone-line);background:rgba(232,184,75,.08)}
.yt-lw-swap{display:none;font:inherit;font-size:11.5px;letter-spacing:.04em;padding:6px 12px;
  border-radius:10px;border:1px solid var(--yt-line);background:rgba(18,18,30,.45);
  color:var(--yt-ink-soft);cursor:pointer;transition:color .15s,border-color .15s}
.yt-lw-swap:hover{color:var(--yt-cyan);border-color:rgba(69,214,223,.4)}
.yt-livewing.split .yt-lw-swap{display:inline-flex}
.yt-livewing.split .yt-lw-tabs{display:none}
.yt-livewing.split .yt-lw-panel{display:grid;grid-template-columns:1fr;gap:16px;
  border-top-left-radius:14px}
.yt-livewing.split .yt-lw-host{min-width:0;scroll-margin-top:70px}
.yt-livewing.split.swapped [data-host="circle"]{order:2}
/* the quick-switch: only in the STACKED split (below 1100px) — pinned on top */
.yt-lw-quick{display:none}
.yt-livewing.split .yt-lw-quick{position:sticky;top:10px;z-index:150;display:flex;gap:6px;
  padding:6px;margin:0 0 12px;background:rgba(10,10,18,.92);border:1px solid var(--yt-line);
  border-radius:12px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.yt-lw-qbtn{flex:1;font:inherit;font-size:13px;font-weight:700;letter-spacing:.06em;
  padding:9px 0;border-radius:8px;border:1px solid transparent;background:none;
  color:var(--yt-ink-soft);cursor:pointer;transition:color .15s,background .15s,border-color .15s}
.yt-lw-qbtn:hover{color:var(--yt-ink)}
.yt-lw-qbtn.on{color:var(--yt-gold);border-color:var(--yt-stone-line);background:rgba(232,184,75,.08)}
@media (min-width:1100px){
  .yt-livewing.split .yt-lw-panel{grid-template-columns:1fr 1fr}
  .yt-livewing.split .yt-lw-quick{display:none}
}

/* ==================== P14: THE CONVERSATION THRESHOLD ====================
   A visible start-line above the forum on every page that carries one, plus
   the floating oval that jumps readers down to it. */
.yt-conv-divider{display:flex;align-items:center;justify-content:center;gap:12px;margin:38px 0 16px;
  font-family:ui-monospace,monospace;font-size:11px;font-weight:700;letter-spacing:.16em;
  text-transform:uppercase;color:var(--yt-gold);scroll-margin-top:24px}
.yt-conv-divider::before,.yt-conv-divider::after{content:"";flex:1;height:1px;max-width:220px}
.yt-conv-divider::before{background:linear-gradient(90deg,transparent,var(--yt-stone-line))}
.yt-conv-divider::after{background:linear-gradient(90deg,var(--yt-stone-line),transparent)}
.yt-conv-divider img{width:15px;height:15px}
.yt-conv-jump{display:flex;align-items:center;justify-content:center;gap:7px;width:max-content;
  margin:14px auto 0;padding:7px 16px;border-radius:999px;border:1px solid var(--yt-stone-line);
  background:rgba(10,10,18,.6);color:var(--yt-gold);text-decoration:none;
  font-family:ui-monospace,monospace;font-size:10.5px;font-weight:700;letter-spacing:.1em;
  text-transform:uppercase;transition:border-color .2s,box-shadow .25s}
.yt-conv-jump:hover{border-color:var(--yt-gold);box-shadow:0 0 18px -8px rgba(232,184,75,.5)}
.yt-conv-jump img{width:13px;height:13px}
/* sign-out joins the pill family, quieter than its siblings */
.yt-signout{color:var(--yt-ink-soft)}
.yt-signout:hover{color:var(--yt-ink);border-color:var(--yt-stone-line)}

/* ==================== THE AGORA: member-raised topic boards ====================
   The directory + composer on your-thoughts/agora.html ([data-yt-agora-topics]).
   Every topic is a <details> board wearing the member family's violet left
   edge (the Card Standard); the thread inside is the ordinary widget. */
/* The raising ground (2026-07-10): the composer lives INSIDE one distinct
   plaque — a subtle violet wash with the member family's violet left edge
   (the Card Standard's color language: violet = member content), so the
   place where topics are born reads apart from the boards below it. */
.yt-agora-raise{margin:0 0 20px;text-align:left;position:relative;border-radius:14px;
  padding:16px 18px 15px;border:1px solid rgba(155,93,229,.28);
  border-left:3px solid var(--yt-violet);
  background:linear-gradient(160deg,rgba(155,93,229,.08) 0%,rgba(155,93,229,.035) 55%,rgba(69,214,223,.025) 100%)}
.yt-agora-raise-head{display:flex;flex-direction:column;gap:5px;margin:0 0 12px}
.yt-agora-raise-title{display:inline-flex;align-items:center;gap:8px;font-size:15px;
  font-weight:700;color:var(--yt-ink);letter-spacing:.3px}
.yt-agora-raise-title .yt-ankh-ic{width:15px;height:15px;
  filter:drop-shadow(0 0 5px rgba(155,93,229,.5))}
.yt-agora-raise-sub{font-size:12.5px;color:var(--yt-ink-soft);line-height:1.55;max-width:62ch}
/* the resting state keeps the plaque, quietly */
.yt-agora-raise .yt-gate-quiet{border:0;background:transparent;padding:4px 0}
.yt-agora-form{text-align:left;margin-top:2px}
/* signed-out / first-thought-gated: the fields wait, honestly dimmed —
   the need-line under them says exactly which door is still closed */
.yt-agora-form.yt-agf-locked .yt-cat-pick,
.yt-agora-form.yt-agf-locked .yt-stance-pick{pointer-events:none;opacity:.55}
.yt-agora-form.yt-agf-locked input:disabled,
.yt-agora-form.yt-agf-locked textarea:disabled{opacity:.55;cursor:not-allowed}
/* the honest hint line: what the always-visible button is still waiting for */
.yt-agora-need{font-size:12.5px;line-height:1.6;color:var(--yt-ink-soft);
  margin:2px 0 4px;transition:color .3s}
.yt-agora-need b{color:var(--yt-ink-stone);font-weight:600}
.yt-agora-need.yt-need-on{color:var(--yt-cyan)}
/* the unready Raise button: faded but present (yt-btn-unready sets the fade;
   aria-disabled carries the state to the screen reader) */
.yt-agora-post[aria-disabled="true"]{cursor:not-allowed}
.yt-agf-tagset{display:inline-flex;gap:7px;flex-wrap:wrap}
.yt-agora-filters{margin:0 0 16px}
/* the duplicate-title warning: a door to the standing board, or "raise it anyway" */
.yt-similar-warn{display:flex;align-items:center;gap:10px;flex-wrap:wrap;
  margin:0 0 10px;padding:10px 14px;border-radius:9px;font-size:13px;line-height:1.5;
  color:var(--yt-amber);border:1px solid #6a4a1c;background:rgba(239,159,39,.07)}
.yt-similar-warn .yt-link{color:var(--yt-cyan)}
/* topic stances: question/speculation/source keep the widget's stance colors;
   THEORY takes the cyan slot (topics carry no "insight" stance — no collision) */
.yt-stance-pick[data-s=theory].on{color:var(--yt-cyan);border-color:var(--yt-cyan);background:rgba(69,214,223,.1)}
.s-theory .yt-c-stance{color:var(--yt-cyan);border-color:#1f6a70}
/* ---- the directory ---- */
.yt-topic-card{background:var(--yt-card);border:1px solid var(--yt-line);
  border-left:3px solid var(--yt-violet);border-radius:12px;margin:0 0 12px;
  overflow:hidden;transition:border-color .2s}
.yt-topic-card[open]{border-color:var(--yt-stone-line);border-left-color:var(--yt-violet)}
.yt-topic-card>summary{list-style:none;cursor:pointer;padding:15px 18px;display:flex;
  align-items:center;gap:13px;user-select:none}
.yt-topic-card>summary::-webkit-details-marker{display:none}
.yt-topic-card>summary:hover{background:rgba(255,255,255,.02)}
.yt-topic-sum{flex:1;min-width:0;display:flex;flex-direction:column;gap:5px}
.yt-topic-title{font-size:15.5px;font-weight:700;color:var(--yt-ink);line-height:1.35}
.yt-topic-pin .yt-ankh-ic{width:13px;height:13px;vertical-align:-2px;
  filter:drop-shadow(0 0 4px rgba(232,184,75,.5))}
.yt-topic-excerpt{font-size:13px;color:var(--yt-ink-soft);line-height:1.55}
.yt-topic-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:2px}
.yt-topic-meta .yt-tag-chip{cursor:default}
.yt-topic-by{font-size:11.5px;color:var(--yt-ink-stone)}
.yt-topic-count{flex:none;display:inline-flex;align-items:center;gap:5px;font-size:10.5px;
  letter-spacing:.04em;color:var(--yt-gold);white-space:nowrap;border:1px solid #4a3c10;
  background:rgba(232,184,75,.06);border-radius:20px;padding:3px 10px}
.yt-topic-count .yt-ankh-ic{width:12px;height:12px;vertical-align:-2px}
/* the louder invite — same heartbeat as the landing cards' Be The First chip */
.yt-topic-count.tpc0{font-weight:700;letter-spacing:.09em;border-color:#5a4512;
  background:rgba(232,184,75,.07);text-shadow:0 0 10px rgba(232,184,75,.35)}
.yt-topic-chev{flex:none;width:18px;height:18px;color:var(--yt-ink-soft);transition:transform .2s}
.yt-topic-card[open] .yt-topic-chev{transform:rotate(90deg);color:var(--yt-gold)}
@media (prefers-reduced-motion:reduce){.yt-topic-chev{transition:none}}
.yt-topic-islocked>summary .yt-topic-title{color:var(--yt-ink-soft)}
.yt-topic-body{padding:2px 18px 18px}
.yt-topic-plaque{padding:4px 0 14px;border-bottom:1px solid var(--yt-line);margin-bottom:8px}
.yt-topic-plaque .yt-c-body{font-size:14px}
.yt-topic-locknote{margin-top:10px}
.yt-topic-plaque-foot{margin-top:10px}
.yt-topic-report{font-size:12px}
@media (max-width:560px){
  .yt-topic-card>summary{padding:13px 14px;gap:10px;flex-wrap:wrap}
  .yt-topic-count{order:3}
  .yt-topic-body{padding:2px 14px 14px}
}
/* ---- the ground-rules re-agreement modal (first raise) ---- */
.yt-modal.yt-modal-rules{max-width:520px}
.yt-agora-rules{max-height:46vh;overflow-y:auto;margin:0 0 16px;padding:14px 16px;
  border:1px solid var(--yt-line);border-radius:10px;background:rgba(10,10,18,.4)}
.yt-modal-rules .yt-agree-btn{width:100%}

/* Agora composer: the stance row mirrors the One Tag line exactly —
   same label, left placement, and chip sizing (stance colors stay semantic) */
.yt-agora-form .yt-stances{justify-content:flex-start;margin:10px 0 0;gap:7px}
.yt-agora-form .yt-stance-pick{font-size:11.5px;padding:3px 11px}

/* ==================== Agora composer: Aeon centering (Gortiva, 2026-07-10) ====================
   Everything inside the plaque centers like the site's plaques; the gold row
   labels stand ABOVE their chips; a quiet fade line separates the stance row
   from the Still Needed guidance. */
.yt-agora-form .yt-field label{display:block;text-align:center}
.yt-agora-form .yt-hint{text-align:center}
.yt-agora-form .yt-cats{justify-content:center}
.yt-agora-form .yt-cats-lab{flex-basis:100%;text-align:center;margin-bottom:3px}
.yt-agora-form .yt-agf-tagset{display:contents}
.yt-agora-form .yt-stances{justify-content:center}
.yt-agora-form .yt-stances::after{content:"";flex-basis:100%;height:1px;margin-top:16px;
  background:linear-gradient(90deg,transparent,var(--yt-line) 30%,var(--yt-line) 70%,transparent)}
.yt-agora-form .yt-agora-need{text-align:center}
.yt-agora-form .yt-need-lab{display:block;margin-bottom:3px}
.yt-agora-form .yt-thread-note{text-align:center}
.yt-agora-form .yt-composer-foot{flex-direction:column;align-items:center;gap:12px}
