/* Rebirth uses the Portal shell; only this experience's composition lives here. */
.portal-shell.rebirth-page {
  --rebirth-accent: var(--press, #ff3d9a);
  --press-ink:#fff; --shadow:var(--panel-shadow);
  height:100dvh; min-height:0; display:flex; flex-direction:column; overflow:hidden;
  --rebirth-tint: var(--glass-2);
  --rebirth-card: var(--glass);
}
.rebirth-shell { width:min(100%,1040px); margin:0 auto; padding:0 28px 36px; flex:1 1 auto; min-height:0; overflow-y:auto; overscroll-behavior-y:contain; }
.rebirth-header-nav { display:flex; align-items:center; gap:20px; margin-left:auto; }
.rebirth-header-nav a { font-size:13px; color:var(--muted); text-decoration:none; }
.rebirth-header-nav a:hover { color:var(--ink); }
.rebirth-intro { text-align:center; margin:0 auto; padding:24px 28px; }
.humor-badge { display:inline-flex; padding:6px 12px; margin-bottom:14px; border:1px solid var(--glass-line-2); border-radius:999px; color:var(--muted); background:var(--glass); font-size:12px; font-weight:750; }
.rebirth-intro h1 { margin:0; color:var(--ink); font-size:clamp(30px,3.7vw,44px); line-height:1.35; letter-spacing:-1.6px; font-weight:850; }
.rebirth-intro .mark { --mark:#ffd23f; --mark-ink:#2a1c00; display:inline-block; padding:0 9px 3px; margin:0 6px 0 0; border:0; border-radius:10px; background:var(--mark); color:var(--mark-ink); box-shadow:4px 4px 0 var(--base); transform:rotate(-2deg); font:inherit; cursor:pointer; }
.rebirth-intro p { margin:10px 0 0; font-size:13px; line-height:1.7; color:var(--muted); word-break:keep-all; }
.application-panel,.assignment-panel,.catalog-section { border:1px solid var(--glass-line); background:var(--glass); border-radius:24px; box-shadow:6px 6px 0 var(--base),var(--shadow);  }
.application-panel { display:grid; grid-template-columns:minmax(0,1.05fr) minmax(0,1fr); gap:28px; align-items:center; padding:28px; }
.rebirth-cast { overflow:clip; min-width:0; height:270px; position:relative; isolation:isolate; }
.cast-halo { position:absolute; width:85%; aspect-ratio:1; max-height:100%; border-radius:50%; left:7%; bottom:0; background:radial-gradient(ellipse,rgba(139,107,255,.38),rgba(255,61,154,.12) 50%,transparent 72%); }
.rebirth-cast img { position:absolute; width:57%; height:100%; object-fit:contain; bottom:0; filter:drop-shadow(0 13px 13px rgba(0,0,0,.15)); }
.rebirth-cast img:nth-of-type(1) { left:-5%; transform:rotate(-8deg); height:86%; }
.rebirth-cast img:nth-of-type(2) { left:22%; z-index:2; }
.rebirth-cast img:nth-of-type(3) { right:-5%; transform:rotate(8deg); height:86%; }
#rebirth-form { min-width:0; }
.quick-draw { display:grid; grid-template-columns:minmax(0,1fr) 132px; gap:18px 14px; align-items:end; }
.quick-draw label { display:block; min-width:0; }
.quick-draw label>span:not(.standard-select-wrap) { display:block; color:var(--ink); font-size:14px; font-weight:750; margin-bottom:9px; }
.quick-draw .standard-select-wrap { margin:0; }
.quick-draw input,.quick-draw #traveler-gender { width:100%; min-width:0; height:54px; margin:0; border:1px solid var(--glass-line-2); border-radius:13px; padding:0 14px; background:var(--glass-2); color:var(--ink); font:inherit; font-size:16px; }
.quick-draw input::placeholder { color:var(--muted); opacity:.8; }
.quick-draw input:focus { border-color:var(--press); outline:0; box-shadow:0 0 0 3px color-mix(in srgb,var(--press) 25%,transparent); }
.quick-draw input[aria-invalid=true] { border-color:#ff8f9e; box-shadow:0 0 0 3px rgba(255,91,124,.18); }
.rebirth-submit { grid-column:1/-1; display:flex; align-items:center; justify-content:center; gap:10px; width:100%; min-height:57px; padding:14px 22px; border:0; border-radius:15px; background:var(--press); color:var(--press-ink); box-shadow:5px 5px 0 var(--press-base); font-size:17px; font-weight:850; cursor:pointer; transition:transform .16s,box-shadow .16s; }
.rebirth-submit:hover { background:var(--press); transform:translate(2px,2px); box-shadow:3px 3px 0 var(--press-base); }
.rebirth-submit:active { transform:translate(4px,4px); box-shadow:1px 1px 0 var(--press-base); }
.rebirth-submit:disabled { opacity:.55; cursor:wait; }
.rebirth-privacy { margin:18px 0 0; color:var(--muted); font-size:12px; line-height:1.75; word-break:keep-all; }
.rebirth-page .form-error { border:1px solid rgba(255,91,124,.4); border-radius:12px; padding:10px 12px; margin:14px 0 0; background:rgba(255,91,124,.12); color:#ffb7c2; }
.assignment-panel { position:relative; padding:25px 30px 28px; scroll-margin-top:100px; }
.assignment-panel:focus { outline:none; }
.assignment-panel:focus-visible { outline:3px solid var(--press); outline-offset:4px; }
.document-heading { display:flex; justify-content:space-between; gap:15px; align-items:center; padding-bottom:16px; border-bottom:1px solid var(--glass-line); font-size:12px; color:var(--muted); font-weight:700; }
.document-heading span:first-child { color:var(--ink); letter-spacing:.03em; }
#assignment-status { border-radius:999px; background:var(--glass-2); padding:5px 10px; }
#assignment-result { display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:0 30px; align-items:center; padding-top:16px; }
.assignment-image-wrap { width:100%; aspect-ratio:1; position:relative; border-radius:50%; background:radial-gradient(ellipse,rgba(139,107,255,.18),transparent 70%); }
.assignment-image-wrap img { display:block; width:100%; height:100%; object-fit:contain; filter:drop-shadow(0 15px 20px rgba(0,0,0,.15)); }
.assignment-copy { min-width:0; }
.assignment-name { margin:0 0 12px; color:var(--muted); font-size:15px; line-height:1.7; overflow-wrap:anywhere; }
.assignment-label { margin:0 0 10px; color:var(--rebirth-accent); font-size:12px; font-weight:800; }
.assignment-job { margin:0 0 14px; font-size:clamp(29px,4vw,42px); font-weight:850; letter-spacing:-1.2px; line-height:1.35; overflow-wrap:anywhere; }
.assignment-scene { margin:0 0 15px; color:var(--muted); font-size:14px; line-height:1.8; }
.assignment-flavor { margin:0; color:var(--ink); font-size:17px; line-height:1.85; word-break:keep-all; }
.assignment-metrics { grid-column:1/-1; display:grid; grid-template-columns:1fr 1fr; gap:14px; margin:24px 0; }
.assignment-metrics article { min-width:0; border:1px solid var(--glass-line); background:var(--glass-2); border-radius:18px; padding:22px; }
.assignment-metrics span,.assignment-metrics b { display:block; font-size:13px; line-height:1.6; overflow-wrap:anywhere; }
.assignment-metrics span { color:var(--muted); }
.assignment-metrics strong { display:block; margin:10px 0; color:var(--ink); font-size:clamp(30px,5vw,52px); font-weight:850; line-height:1.2; letter-spacing:-1.3px; font-variant-numeric:tabular-nums; }
.assignment-metrics small { font-size:.42em; margin-left:3px; color:var(--muted); }
.assignment-metrics b { color:var(--rebirth-accent); font-weight:700; }
.assignment-metrics p { grid-column:1/-1; margin:0; color:var(--muted); font-size:12px; line-height:1.7; }
.assignment-history { grid-column:1/-1; border-top:1px solid var(--glass-line); padding-top:20px; text-align:left; }
.assignment-history p { color:var(--muted); font-size:15px; line-height:1.9; margin:0 0 8px; word-break:keep-all; }
.assignment-history a { font-size:13px; color:var(--rebirth-accent); text-underline-offset:4px; overflow-wrap:anywhere; }
.assignment-facts { grid-column:1/-1; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; padding:0; margin:24px 0 0; }
.assignment-facts>div { padding:17px; background:var(--glass); border:1px solid var(--glass-line); border-radius:15px; }
.assignment-facts dt { color:var(--muted); font-size:12px; margin-bottom:8px; }
.assignment-facts dd { margin:0; color:var(--ink); font-size:14px; line-height:1.8; word-break:keep-all; }
.catalog-toggle,.catalog-pagination button { display:inline-flex; justify-content:center; align-items:center; gap:7px; padding:12px 16px; border:1px solid var(--glass-line-2); background:var(--glass-2); color:var(--ink); border-radius:13px; font-size:14px; font-weight:750; min-height:48px; cursor:pointer; }
.catalog-toggle:hover { border-color:var(--press); }
.assignment-footer { flex:0 0 auto; position:relative; z-index:20; padding:10px 28px max(12px,env(safe-area-inset-bottom)); border-top:1px solid var(--glass-line); background:var(--page); }
.assignment-footer-inner { width:min(100%,984px); margin:auto; display:flex; align-items:center; justify-content:flex-end; gap:12px; }
#reroll-assignment { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:52px; min-width:220px; padding:12px 22px; border:0; border-radius:14px; background:var(--press); color:var(--press-ink); box-shadow:4px 4px 0 var(--press-base); font-size:16px; font-weight:800; cursor:pointer; }
#reroll-assignment:hover { transform:translate(1px,1px); }
#reroll-assignment:active { transform:translate(3px,3px); box-shadow:1px 1px 0 var(--press-base); }
.assignment-support { position:relative; flex:0 0 auto; }
.assignment-menu-toggle { display:grid; place-items:center; width:48px; height:48px; padding:0; border:1px solid var(--glass-line-2); border-radius:14px; background:var(--glass-2); color:var(--ink); cursor:pointer; }
.assignment-menu { position:absolute; right:0; bottom:calc(100% + 12px); width:min(270px,calc(100vw - 36px)); max-height:calc(100dvh - 160px); overflow:auto; overscroll-behavior:contain; padding:8px; border:1px solid var(--glass-line-2); border-radius:16px; background:var(--page); box-shadow:var(--shadow); }
.assignment-menu button { display:flex; align-items:center; justify-content:flex-start; gap:10px; width:100%; min-height:46px; margin:0; padding:10px 12px; border:0; border-radius:10px; background:transparent; color:var(--ink); box-shadow:none; font-size:14px; text-align:left; cursor:pointer; }
.assignment-menu button:hover,.assignment-menu button:focus-visible,.assignment-menu-toggle:hover { background:var(--glass-2); }
.assignment-footer button:focus-visible { outline:3px solid var(--press); outline-offset:2px; }
.assignment-note { grid-column:1/-1; margin:18px 0 0; color:var(--muted); font-size:12px; line-height:1.7; text-align:center; }
.image-error { padding-top:40px; color:var(--muted); font-size:14px; line-height:1.8; text-align:center; }
.catalog-section { margin-top:26px; padding:23px 25px; }
.catalog-heading { display:flex; align-items:center; justify-content:space-between; gap:14px; }
.section-kicker { color:var(--rebirth-accent); display:block; font-size:10px; font-weight:800; letter-spacing:1.3px; margin-bottom:8px; }
.catalog-heading h2 { color:var(--ink); font-size:23px; line-height:1.4; letter-spacing:-.7px; margin:0; }
.catalog-toggle { flex-shrink:0; font-size:13px; }
.catalog-controls { display:flex; gap:20px; flex-wrap:wrap; align-items:end; margin:24px 0; scroll-margin-top:100px; }
.catalog-controls>label { color:var(--muted); font-size:13px; }
.catalog-controls select { display:block; width:190px; max-width:100%; min-height:46px; margin-top:8px; padding:0 12px; font-size:14px; border:1px solid var(--glass-line-2); border-radius:12px; background:var(--glass-2); color:var(--ink); }
#catalog-count { margin-left:auto; color:var(--muted); font-size:12px; padding-bottom:10px; }
.catalog-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.catalog-card { min-width:0; padding:16px; border:1px solid var(--glass-line); background:var(--glass); border-radius:18px; }
.catalog-card img { width:100%; height:auto; aspect-ratio:1; object-fit:contain; display:block; }
.catalog-card h3 { margin:10px 0 8px; font-size:16px; font-weight:800; line-height:1.4; }
.catalog-card p { margin:0; color:var(--muted); font-size:12px; line-height:1.75; word-break:keep-all; }
.catalog-card .catalog-origin { color:var(--rebirth-accent); font-size:12px; margin-bottom:8px; }
.catalog-number { color:var(--muted); font-size:11px; }
.catalog-pagination { display:flex; align-items:center; justify-content:center; gap:16px; margin-top:24px; color:var(--muted); font-size:13px; }
.catalog-pagination button:disabled { opacity:.35; cursor:default; }
.collection-more { display:flex; flex-direction:column; justify-content:center; align-items:center; text-align:center; border-style:dashed; min-height:230px; }
.collection-more>span { color:var(--rebirth-accent); font-size:52px; line-height:1; margin-bottom:16px; }
.collection-more h3 { font-size:15px; }
.rebirth-about { margin:25px 0 0; padding:18px 20px; border:1px solid var(--glass-line); border-radius:16px; background:var(--glass); color:var(--muted); font-size:13px; }
.rebirth-about summary { color:var(--ink); cursor:pointer; font-weight:750; }
.rebirth-about p { font-size:13px; line-height:1.9; }
.rebirth-page .site-footer { margin-top:25px; color:var(--muted); font-size:12px; border-color:var(--glass-line); }
.rebirth-page .site-footer a { color:var(--muted); text-decoration:none; }
/* Journey animations only run during an explicit draw. Idle artwork is static. */
.assignment-empty { position:relative; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; padding:16px 0 25px; min-height:430px; }
.time-stage { position:relative; width:min(100%,380px); aspect-ratio:1; margin:auto; isolation:isolate; overflow:hidden; contain:layout paint; }
.cycling-portrait { position:absolute; inset:15%; display:grid; place-items:center; z-index:2; }
.cycling-portrait img { width:100%; height:100%; object-fit:contain; }
.orbit { position:absolute; border:1px dashed var(--glass-line-2); border-radius:50%; }
.orbit-inner { inset:18%; --radius:112px; }
.orbit-outer { inset:3%; --radius:170px; }
.orbit>span { position:absolute; left:50%; top:50%; transform:rotate(var(--angle)) translateY(calc(-1 * var(--radius))) rotate(calc(-1 * var(--angle))); width:34px; height:34px; margin:-17px; display:grid; place-items:center; }
.orbit b { display:grid; place-items:center; width:34px; height:34px; border-radius:50%; background:var(--page); border:1px solid var(--glass-line); color:var(--muted); font-size:20px; font-weight:400; }
[data-rebirth-view=drawing] .orbit { animation:orbit-turn 12s linear infinite; }
.travel-particles { position:absolute; inset:0; display:none; z-index:3; pointer-events:none; }
.travel-particles span { position:absolute; left:50%; top:50%; animation:time-flight 1.3s ease-in infinite; animation-delay:var(--delay); color:var(--rebirth-accent); }
.travel-particles img { display:block; width:80px; height:80px; object-fit:contain; }
.searching .travel-particles { display:block; }
.searching .cycling-portrait { opacity:.16; filter:blur(3px); }
.assignment-empty h2 { margin:14px 0 6px; font-size:22px; line-height:1.5; color:var(--ink); font-weight:800; }
.assignment-empty #travel-message { margin:0; color:var(--muted); font-size:14px; line-height:1.7; }
.country-impact { width:100%; text-align:center; animation:country-slam .35s ease-out both; }
.country-impact span { display:block; color:var(--muted); font-size:16px; margin-bottom:12px; }
.country-impact strong { display:block; color:var(--ink); font-size:clamp(28px,4vw,44px); line-height:1.25; letter-spacing:-1.2px; overflow-wrap:anywhere; }
.rebirth-flash { position:fixed; inset:0; z-index:10000; background:var(--page); opacity:0; pointer-events:none; }
.assignment-ending { grid-column:1/-1; margin-top:25px; padding-top:22px; border-top:1px solid var(--glass-line); text-align:center; }
.ending-toggle { width:100%; min-height:56px; padding:14px; border:1px solid var(--glass-line-2); border-radius:14px; background:var(--glass-2); color:var(--ink); font-size:16px; font-weight:750; cursor:pointer; }
.ending-toggle:disabled { opacity:.7; cursor:wait; }
.ending-toggle:focus-visible { outline:3px solid var(--press); outline-offset:3px; }
.ending-reveal { display:grid; grid-template-rows:0fr; opacity:0; transition:grid-template-rows .4s ease,opacity .3s; }
.ending-reveal.is-open { grid-template-rows:1fr; opacity:1; }
.ending-reveal-inner { overflow:hidden; min-height:0; }
.ending-content { min-height:300px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:14px; padding:28px 14px 20px; }
.ending-pictogram { width:118px; height:118px; object-fit:contain; }
.ending-content h3 { margin:0; max-width:620px; color:var(--ink); font-size:clamp(19px,2.8vw,25px); line-height:1.6; word-break:keep-all; }
.ending-content h3:focus { outline:none; }
.ending-rarity { margin:0; padding:6px 12px; border:1px solid var(--glass-line); border-radius:999px; background:var(--glass-2); color:var(--muted); font-size:13px; }
.ending-rarity[data-rarity="희귀"] { border-color:var(--press); color:var(--rebirth-accent); }
.ending-fiction,.ending-loading-copy { margin:0; color:var(--muted); font-size:12px; line-height:1.7; }
.ending-loader { width:40px; height:40px; border:3px solid var(--glass-line); border-top-color:var(--press); border-radius:50%; animation:orbit-turn 1.2s linear infinite; }
html[data-theme=dark] .ending-pictogram { filter:invert(1) brightness(1.35); }
@keyframes orbit-turn { to { transform:rotate(360deg); } }
@keyframes time-flight { 0% { opacity:0; transform:rotate(var(--angle)) translateX(0) scale(.2); } 20% { opacity:.8; } 100% { opacity:0; transform:rotate(var(--angle)) translateX(330px) scale(1.8); } }
@keyframes country-slam { from { opacity:0; transform:scale(1.08); } to { opacity:1; transform:scale(1); } }
@media(max-width:700px) {
 .rebirth-shell { padding:0 18px 28px; }
 .rebirth-header-nav { display:none; }
 .rebirth-intro { margin-bottom:0; padding:18px; }
 .rebirth-intro h1 { font-size:34px; }
 .rebirth-intro p { font-size:12px; margin-top:10px; }
 .application-panel { grid-template-columns:1fr; gap:16px; padding:22px; }
 .rebirth-cast { max-width:360px; width:100%; height:190px; margin:0 auto; }
 .quick-draw { grid-template-columns:minmax(0,1fr) 112px; gap:17px 12px; }
 .quick-draw label>span { font-size:13px; }
 .quick-draw input,.quick-draw #traveler-gender { height:50px; padding-left:12px; }
 .assignment-panel { padding:20px; }
 #assignment-result { grid-template-columns:1fr; gap:0; text-align:center; }
 .assignment-image-wrap { max-width:330px; margin:auto; }
 .assignment-name { margin:0 0 9px; }
 .assignment-job { font-size:34px; }
 .assignment-flavor { font-size:16px; }
 .assignment-metrics { gap:10px; }
 .assignment-metrics article { padding:17px 12px; }
 .assignment-metrics span { font-size:12px; min-height:38px; }
 .assignment-facts { grid-template-columns:1fr; gap:10px; text-align:left; }
 .assignment-facts>div { display:grid; grid-template-columns:80px minmax(0,1fr); gap:10px; padding:13px; }
 .assignment-facts dt { margin:0; line-height:1.8; }
 .assignment-footer { padding:9px 18px max(12px,env(safe-area-inset-bottom)); }
 #reroll-assignment { flex:1; min-width:0; }
 .catalog-section { padding:20px; }
 .catalog-heading h2 { font-size:19px; }
 .catalog-toggle { font-size:12px; padding:10px 12px; }
 .catalog-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:11px; }
 .catalog-card { padding:12px; }
 .catalog-card h3 { font-size:14px; }
 .collection-more { min-height:220px; }
 .collection-more h3 { font-size:13px; }
 .catalog-controls { gap:10px; }
 #catalog-count { margin:0; padding:0; }
 .time-stage { width:min(100%,300px); }
 .orbit-inner { --radius:86px; }
 .orbit-outer { --radius:128px; }
 .assignment-empty { min-height:360px; }
 .assignment-empty h2 { font-size:19px; }
 .assignment-empty #travel-message { font-size:13px; }
}
@media(max-width:359px) {
 .rebirth-shell { padding:0 14px 25px; }
 .rebirth-intro { padding:15px 12px; }
 .rebirth-intro h1 { font-size:30px; }
 .humor-badge { font-size:11px; margin-bottom:11px; }
 .rebirth-intro p { font-size:12px; }
 .application-panel { padding:17px; gap:12px; }
 .rebirth-cast { height:140px; }
 .quick-draw { grid-template-columns:minmax(0,1fr) 100px; gap:14px 9px; }
 .quick-draw input,.quick-draw #traveler-gender { font-size:15px; height:48px; }
 .rebirth-submit { font-size:15px; min-height:52px; }
 .rebirth-privacy { margin-top:14px; font-size:11px; }
 .assignment-panel { padding:16px; }
 .assignment-job { font-size:28px; }
 .assignment-metrics strong { font-size:29px; }
 .assignment-metrics article { padding:15px 9px; }
 .assignment-metrics span { font-size:11px; }
 .catalog-section { padding:17px; }
 .catalog-heading h2 { font-size:17px; }
 .catalog-toggle { padding:9px; font-size:11px; }
 .assignment-facts>div { grid-template-columns:65px minmax(0,1fr); }
 .assignment-actions { gap:10px; }
 .assignment-actions button { font-size:12px; }
 .assignment-empty { min-height:320px; }
 .orbit-inner { --radius:70px; }
 .orbit-outer { --radius:106px; }
 .orbit b { width:29px; height:29px; font-size:17px; }
}
@media(prefers-reduced-motion:reduce) {
 .rebirth-submit,.ending-reveal { transition:none; }
 [data-rebirth-view=drawing] .orbit,.travel-particles span,.country-impact,.ending-loader { animation:none; }
 .travel-particles,.rebirth-flash { display:none!important; }
}

/* Transform-only rays remain inside the portrait area and sleep off screen. */
.assignment-image-wrap{isolation:isolate;--halo-color:#b8b3d5;--halo-strength:.2;--halo-ring:0;--halo-angle:30deg}
.assignment-image-wrap[data-rarity=uncommon]{--halo-color:#46dfbb;--halo-strength:.35;--halo-ring:.2;--halo-angle:24deg}
.assignment-image-wrap[data-rarity=rare]{--halo-color:#57caff;--halo-strength:.48;--halo-ring:.35;--halo-angle:20deg}
.assignment-image-wrap[data-rarity=epic]{--halo-color:#c090ff;--halo-strength:.7;--halo-ring:.6;--halo-angle:16deg}
.assignment-image-wrap[data-rarity=legendary]{--halo-color:#ffe185;--halo-strength:.9;--halo-ring:.85;--halo-angle:12deg}
.assignment-image-wrap img{position:relative;z-index:1}
.assignment-halo{position:absolute;inset:0;z-index:0;pointer-events:none;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--halo-color) 26%,transparent),transparent 68%)}
.assignment-halo i,.assignment-halo b{position:absolute;inset:0;border-radius:50%;opacity:var(--halo-strength);animation:assignment-halo-turn 56s linear infinite;background:repeating-conic-gradient(from 0deg,transparent 0deg,var(--halo-color) 3deg,transparent 8deg,transparent var(--halo-angle));mask-image:radial-gradient(circle,transparent 12%,#000 28%,#000 44%,transparent 69%);-webkit-mask-image:radial-gradient(circle,transparent 12%,#000 28%,#000 44%,transparent 69%)}
.assignment-halo b{inset:6%;animation-duration:80s;animation-direction:reverse;opacity:var(--halo-ring);border:1px solid var(--halo-color);background:repeating-conic-gradient(transparent 0deg,transparent 40deg,var(--halo-color) 44deg,transparent 48deg,transparent 60deg);mask-image:radial-gradient(circle,transparent 43%,#000 55%,transparent 70%);-webkit-mask-image:radial-gradient(circle,transparent 43%,#000 55%,transparent 70%)}
.assignment-image-wrap[data-rarity=legendary] .assignment-halo{filter:drop-shadow(0 0 10px #ffe18555)}
.assignment-image-wrap[data-paused=true] .assignment-halo i,.assignment-image-wrap[data-paused=true] .assignment-halo b{animation-play-state:paused}
@keyframes assignment-halo-turn{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.assignment-halo i,.assignment-halo b{animation:none}}

/* Hidden tabs do not composite the staged travel effect. */
.time-stage[data-paused=true] .orbit,.time-stage[data-paused=true] .travel-particles span { animation-play-state:paused; }
