/* Human snapshots on the same quiet paper as Life. Gold is reserved for Light. */
.world-page,.world-dialog{
 --world-ink:var(--spirit-ink,#30425f);--world-muted:color-mix(in srgb,var(--spirit-muted,#62758d) 82%,var(--spirit-ink,#30425f));
 --world-line:rgba(var(--spirit-rgb,133,160,193),.23);--world-soft:rgba(var(--spirit-rgb,133,160,193),.12);
 color:var(--world-ink);font-family:var(--font-ui,-apple-system,BlinkMacSystemFont,"PingFang SC",sans-serif);
 overflow-wrap:anywhere;box-sizing:border-box;
}
.world-page *, .world-dialog *{box-sizing:border-box}
.world-page{padding:0 2px 28px;min-width:0}
.world-opening{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 23px}
.world-sr-title{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.world-opening>p{font:12px/1.9 var(--font-ui,system-ui);color:var(--world-muted);margin:0}
.world-light-mark{display:grid;place-items:center;position:relative;width:54px;height:54px;flex:none}
.world-light-mark::before{content:"";position:absolute;inset:7px;border-radius:50%;background:radial-gradient(circle,#fffef8 4%,#fff1c793 45%,#fff9e400 73%);box-shadow:0 0 27px 13px #fff0c92d}
.world-light-mark svg{position:relative;width:23px;height:23px;fill:#fffdf1;stroke:#b09a6799;stroke-width:.7}
.world-toolbar{display:flex;flex-direction:column;align-items:stretch;gap:14px;margin-bottom:10px}
.world-tabs{display:flex;gap:27px;min-width:0;border-bottom:1px solid var(--world-line)}
.world-page button,.world-dialog button{min-height:44px;cursor:pointer;-webkit-tap-highlight-color:transparent;font-family:var(--font-ui,system-ui)}
.world-page button:disabled,.world-dialog button:disabled{opacity:.5;cursor:default}
.world-tabs button{position:relative;padding:9px 0 13px;border:0;border-radius:0;background:none;font:13px/1.6 var(--font-ui,system-ui);color:var(--world-muted)}
.world-tabs button[aria-pressed="true"]{color:var(--world-ink);font-weight:500}
.world-tabs button[aria-pressed="true"]::after{content:"";position:absolute;bottom:-1px;left:0;width:24px;height:2px;background:var(--spirit-accent,#7893b0);border-radius:3px}
.world-share-entry{display:flex;align-items:center;align-self:flex-start;gap:8px;padding:6px 0;border:0;background:none;color:var(--world-muted);font-size:11px;line-height:1.7;text-align:left}
.world-share-entry svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1}
.world-stream{min-width:0}
.world-light{padding:27px 1px 24px;min-width:0}
.world-light+.world-light{border-top:1px solid var(--world-line)}
.world-light-text{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;font:400 17px/2.05 var(--font-display,Georgia,serif);letter-spacing:.015em;color:var(--world-ink)}
.world-light-byline{display:flex;flex-wrap:wrap;align-items:center;gap:5px 16px;margin-top:20px;font:11px/1.8 var(--font-ui,system-ui);color:var(--world-muted)}
.world-light-byline time{font-variant-numeric:tabular-nums}
.world-light-actions{margin-top:17px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:4px 12px}
.world-responses{display:flex;flex-wrap:wrap;align-items:center;gap:2px 14px}
.world-responses button{display:inline-flex;align-items:center;gap:5px;min-width:0;max-width:100%;padding:7px 0;border:0;border-radius:6px;background:none;text-align:left;font:11px/1.8 var(--font-ui,system-ui);color:var(--world-muted)}
.world-responses button svg{width:13px;height:13px;flex:none;fill:none;stroke:currentColor;stroke-width:1}
.world-responses button[aria-pressed="true"]{color:var(--world-ink);text-decoration:underline;text-decoration-color:var(--spirit-accent,#7893b0);text-underline-offset:5px}
.world-responses button[aria-pressed="true"] svg{fill:#f7dda078;stroke:#99814e}
.world-own-note{font:10px/1.8 var(--font-ui,system-ui);color:var(--world-muted)}
.world-page .world-text-button,.world-dialog .world-text-button{display:inline-block;max-width:100%;padding:7px 0;border:0;border-radius:6px;background:none;font:12px/1.8 var(--font-ui,system-ui);color:var(--world-muted);text-align:left}
.world-light-actions .world-text-button{font-size:10px}
.world-empty{padding:40px 9px 34px;text-align:center}
.world-empty-light{display:block;width:19px;height:19px;margin:0 auto 30px;border:1px solid #fffef5;border-radius:50%;background:radial-gradient(circle,#fffefa,#fff1cba8);box-shadow:0 0 17px 8px #ffeab152,0 0 32px 17px #fff5d72b}
.world-empty h2{font:400 20px/1.7 var(--font-display,Georgia,serif);margin:0}
.world-empty p{font:12px/1.9 var(--font-ui,system-ui);color:var(--world-muted);margin:12px 0}
.world-empty .world-text-button{margin-top:12px;text-align:center;text-decoration:underline;text-decoration-color:var(--world-line);text-underline-offset:5px}
.world-stream-end{border-top:1px solid var(--world-line);margin-top:15px;padding:23px 0 7px;text-align:center}
.world-stream-end p{margin:0 0 8px;font:11px/1.9 var(--font-ui,system-ui);color:var(--world-muted)}
.world-stream-end .world-text-button{text-align:center;font-size:11px}
.world-loading,.world-feed-error{padding:34px 0;font:12px/1.9 var(--font-ui,system-ui);color:var(--world-muted)}
.world-feed-error p{margin:0}
.world-local-status:empty,.world-status:empty{display:none}
.world-local-status,.world-status{font:12px/1.8 var(--font-ui,system-ui);color:var(--world-ink);margin:16px 0 0}
.world-page :is(button,input,textarea):focus-visible,.world-dialog :is(button,input,textarea):focus-visible{outline:2px solid var(--spirit-accent,#7893b0);outline-offset:4px}

dialog.world-dialog{
 position:fixed;inset:auto 0 0;width:min(100%,430px);max-width:100%;height:auto;max-height:90dvh;margin:0 auto;padding:0;
 border:1px solid #ffffffa6;border-bottom:0;border-radius:29px 29px 0 0;
 background:linear-gradient(145deg,rgba(var(--spirit-rgb,133,160,193),.09),transparent 220px),rgb(var(--spirit-paper,246,249,252));
 box-shadow:0 -10px 40px #2635490d;overflow:auto;overscroll-behavior:contain;
}
dialog.world-dialog:not([open]){display:none}
dialog.world-dialog::backdrop{background:#24324635;backdrop-filter:blur(3px)}
.world-dialog-inner{padding:20px 25px calc(26px + env(safe-area-inset-bottom));min-width:0}
.world-dialog-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin:0 0 17px}
.world-dialog-heading h2{font:400 25px/1.65 var(--font-display,Georgia,serif);margin:4px 0 0;min-width:0;color:var(--world-ink);outline:none}
.world-dialog .world-close{flex:none;min-width:44px;width:44px;margin:0 -11px 0 0;padding:0;border:0;border-radius:50%;background:none;font:300 26px/1 var(--font-ui,system-ui);color:var(--world-muted)}
.world-dialog-note{font:12px/1.95 var(--font-ui,system-ui);color:var(--world-muted);margin:0 0 22px;white-space:normal}
.world-inline-note{border-left:2px solid var(--world-line);padding-left:12px;margin:18px 0;font:12px/1.9 var(--font-ui,system-ui);color:var(--world-ink)}
.world-candidates{margin:22px 0 0}
.world-dialog .world-candidate{display:block;width:100%;max-width:100%;padding:22px 0;border:0;border-top:1px solid var(--world-line);border-radius:0;background:none;text-align:left;color:var(--world-ink)}
.world-candidate>span{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;white-space:pre-wrap;overflow-wrap:anywhere;font:400 16px/1.95 var(--font-display,Georgia,serif)}
.world-candidate small{display:block;margin-top:12px;font:10px/1.8 var(--font-ui,system-ui);color:var(--world-muted);font-variant-numeric:tabular-nums}
.world-dialog-empty{padding:32px 0 40px;text-align:center}
.world-dialog-empty p{font:400 18px/1.9 var(--font-display,Georgia,serif);margin:0 0 10px;color:var(--world-ink)}
.world-dialog-empty small{font:12px/1.9 var(--font-ui,system-ui);color:var(--world-muted)}
.world-share-form>label:not(.world-checkbox){display:block;margin:22px 0 8px;font:12px/1.8 var(--font-ui,system-ui);color:var(--world-ink)}
.world-share-form :is(textarea,input:not([type="checkbox"]):not([type="radio"])){display:block;width:100%;min-width:0;max-width:100%;margin:0;padding:12px 13px;border:1px solid var(--world-line);border-radius:13px;background:#ffffff63;color:var(--world-ink);font:16px/1.8 var(--font-ui,system-ui);box-shadow:none}
.world-share-form textarea{min-height:190px;resize:vertical;white-space:pre-wrap}
.world-field-note{display:block;margin:8px 0 0;font:10px/1.8 var(--font-ui,system-ui);color:var(--world-muted)}
.world-checkbox{display:flex;align-items:center;gap:10px;min-height:44px;margin:20px 0 8px;cursor:pointer;font:12px/1.8 var(--font-ui,system-ui);color:var(--world-muted)}
.world-checkbox input{appearance:auto;width:17px;height:17px;flex:none;margin:0;accent-color:var(--spirit-accent,#7893b0)}
.world-dialog-controls{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:9px 14px;margin-top:26px}
.world-dialog .world-primary{min-height:46px;max-width:100%;padding:11px 18px;border:1px solid rgba(var(--spirit-rgb,133,160,193),.22);border-radius:99px;background:rgba(var(--spirit-rgb,133,160,193),.18);box-shadow:inset 0 1px 0 #ffffff7a;color:var(--world-ink);font:13px/1.6 var(--font-ui,system-ui);text-align:center;white-space:normal}
.world-audience{display:block;margin:0;padding:3px 0 19px;border-bottom:1px solid var(--world-line);font:11px/1.8 var(--font-ui,system-ui);color:var(--world-muted)}
.world-audience strong{display:block;font:500 13px/1.8 var(--font-ui,system-ui);color:var(--world-ink);margin-top:5px}
.world-preview-light{padding:23px 0 27px}
.world-preview-light+.world-dialog-note{border-top:1px solid var(--world-line);padding-top:20px;margin-bottom:0}
.world-dialog .world-cancel-link{display:block;margin:13px auto 0;padding:8px 10px;border:0;background:none;color:var(--world-muted);font:11px/1.7 var(--font-ui,system-ui)}
button.world-source-share{display:inline-flex;align-items:center;justify-content:flex-start;gap:6px;max-width:100%;min-height:44px;padding:7px 0;border:0;border-radius:6px;background:none;box-shadow:none;color:var(--spirit-muted,#62758d);font:11px/1.8 var(--font-ui,system-ui);text-align:left;white-space:normal;cursor:pointer}
button.world-source-share:focus-visible{outline:2px solid var(--spirit-accent,#7893b0);outline-offset:4px}
button.world-source-share:disabled{opacity:.5;cursor:default}
@media(max-width:360px){
 .world-dialog-inner{padding-inline:20px}.world-dialog-heading h2{font-size:23px}
 .world-light-text{font-size:16px}.world-responses{gap:0 12px}.world-dialog-controls{gap:9px 10px}.world-dialog .world-primary{padding-inline:14px;font-size:12px}
}
@media(prefers-reduced-motion:reduce){.world-page *,.world-dialog *{scroll-behavior:auto;transition:none;animation:none}}
/* A quiet reading surface below the realm opening; no changes to Today/Mira. */
body[data-page="world"] .mobile-shell{background:linear-gradient(180deg,rgba(var(--spirit-paper,248,249,250),.30),rgba(var(--spirit-paper,248,249,250),.85) 240px,rgb(var(--spirit-paper,248,249,250)) 570px);box-shadow:none}
body[data-page="world"] .topbar{height:auto;min-height:112px;padding:28px 24px 24px;align-items:center;gap:10px}
body[data-page="world"] .wordmark{display:flex;flex:1;min-width:0;flex-direction:column;align-items:flex-start;gap:9px;letter-spacing:0;color:var(--spirit-ink,var(--ink))}
body[data-page="world"] #screen{padding:8px 24px 0}
@media(max-width:360px){body[data-page="world"] .topbar{padding-inline:20px}body[data-page="world"] #screen{padding-inline:20px}}

/* Three stages of lived experience, with one continuous reading surface. */
.world-channel-tabs{justify-content:space-between;gap:16px}
.world-channel-tabs button{font-size:13px;white-space:nowrap;min-width:44px}
.world-reading-controls{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:5px 12px}
.world-audience-tabs{display:flex;gap:14px;flex:none}
.world-audience-tabs button{padding:5px 0;border:0;background:none;color:var(--world-muted);font:11px/1.8 var(--font-ui,system-ui)}
.world-audience-tabs button[aria-pressed="true"]{color:var(--world-ink);text-decoration:underline;text-decoration-color:var(--world-line);text-underline-offset:5px}
.world-reading-controls .world-share-entry{font-size:10px;gap:5px}
.world-reading-controls .world-share-entry svg{width:12px;height:12px}
.world-private-entry{display:block!important;margin:2px auto 0!important;font-size:11px!important}
.world-entry-heading{display:flex;align-items:baseline;gap:7px 13px;flex-wrap:wrap;margin:0 0 13px;font:11px/1.8 var(--font-ui,system-ui);color:var(--world-muted)}
.world-entry-kind{font-family:var(--font-display,Georgia,serif);font-size:13px;white-space:nowrap}
.world-entry-topic{font-size:10px;overflow-wrap:anywhere}
.world-public-photo{margin:20px 0 0}
.world-public-photo img{display:block;width:100%;max-width:100%;height:auto;max-height:350px;object-fit:contain;border-radius:15px;background:rgba(var(--spirit-rgb,133,160,193),.07)}
.world-roadmarks{list-style:none;margin:24px 0 0;padding:0}
.world-roadmarks li{position:relative;display:grid;grid-template-columns:54px minmax(0,1fr);gap:15px;margin:0;padding:0 0 22px}
.world-roadmarks li:last-child{padding-bottom:0}
.world-roadmarks li::before{content:"";position:absolute;left:60px;top:8px;bottom:-7px;width:1px;background:var(--world-line)}
.world-roadmarks li:last-child::before{bottom:auto;height:2px}
.world-roadmarks li::after{content:"";position:absolute;left:58px;top:8px;width:5px;height:5px;border-radius:50%;background:var(--spirit-accent,#7893b0);opacity:.55}
.world-roadmarks time{padding-top:2px;font:10px/1.8 var(--font-ui,system-ui);color:var(--world-muted);font-variant-numeric:tabular-nums}
.world-roadmarks p{margin:0;font:13px/1.95 var(--font-ui,system-ui);color:var(--world-ink);white-space:pre-wrap}
.world-roadmarks small{display:block;margin-top:5px;font:10px/1.8 var(--font-ui,system-ui);color:var(--world-muted)}
.world-roadmarks .world-route-advice{font:12px/1.9 var(--font-display,Georgia,serif);color:var(--world-muted);margin-top:9px}
.world-topic-link{display:flex;align-items:center;gap:8px;min-height:44px;margin:7px 0 -6px;padding:6px 0;border:0;background:none;font:11px/1.8 var(--font-ui,system-ui);color:var(--world-muted)}
.world-topic-link>span{font-size:13px}
.world-topic-back{margin:-5px 0 12px}
.world-topic-heading{padding:1px 0 21px;border-bottom:1px solid var(--world-line)}
.world-topic-heading>p:first-child{margin:0 0 10px;font:11px/1.8 var(--font-ui,system-ui);color:var(--world-muted)}
.world-topic-heading h2{margin:0 0 19px;font:400 26px/1.65 var(--font-display,Georgia,serif);overflow-wrap:anywhere;color:var(--world-ink)}
.world-add-dream{display:block;max-width:100%;min-height:44px;padding:9px 17px;border:1px solid var(--world-line);border-radius:99px;background:var(--world-soft);font:12px/1.8 var(--font-ui,system-ui);color:var(--world-ink)}
.world-topic-heading>small,.world-dream-saved{display:block;font:11px/1.8 var(--font-ui,system-ui);color:var(--world-muted);margin:10px 0 0}
.world-topic-section{padding-top:27px}
.world-topic-section>h3{margin:0;font:400 20px/1.7 var(--font-display,Georgia,serif);color:var(--world-ink)}
.world-topic-section>.world-light{padding-top:21px}
.world-source-group{margin:21px 0 0}
.world-source-group h3{margin:0 0 2px;font:400 20px/1.7 var(--font-display,Georgia,serif);color:var(--world-ink)}
.world-source-group .world-candidate{padding:18px 0}
.world-kind-choices,.world-roadmark-choices{display:block;min-width:0;margin:20px 0 0;padding:0;border:0}
.world-kind-choices legend,.world-roadmark-choices legend{display:block;padding:0;margin:0 0 8px;font:12px/1.8 var(--font-ui,system-ui);color:var(--world-ink)}
.world-kind-choices>label{display:inline-flex;align-items:center;gap:6px;min-height:44px;margin-right:17px;font:12px/1.8 var(--font-ui,system-ui);color:var(--world-muted);cursor:pointer}
.world-kind-choices input,.world-roadmark-choices input{appearance:auto;display:inline-block;width:16px;height:16px;min-width:16px;flex:none;margin:0;accent-color:var(--spirit-accent,#7893b0)}
.world-kind-choices input:checked+span{color:var(--world-ink)}
.world-photo-choice{margin:16px 0 23px;padding:0}
.world-photo-choice .world-checkbox{margin-bottom:11px}
.world-photo-choice img{display:block;max-width:100%;width:auto;height:160px;object-fit:contain;border-radius:12px}
.world-roadmark-choices>.world-field-note{margin:0 0 9px}
.world-roadmark-choices>label{display:flex;align-items:flex-start;gap:11px;margin:0;padding:14px 0;border-top:1px solid var(--world-line);cursor:pointer;min-height:44px}
.world-roadmark-choices input{margin-top:6px}
.world-roadmark-choices label>span{display:block;min-width:0}
.world-roadmark-choices time,.world-roadmark-choices small{display:block;font:10px/1.8 var(--font-ui,system-ui);color:var(--world-muted)}
.world-roadmark-choices strong{display:block;font:400 13px/1.9 var(--font-ui,system-ui);color:var(--world-ink);margin:4px 0;white-space:pre-wrap}
@media(max-width:360px){.world-reading-controls{gap:0 8px}.world-audience-tabs{gap:11px}.world-reading-controls .world-share-entry{font-size:9px}.world-topic-heading h2{font-size:24px}.world-kind-choices>label{margin-right:12px;font-size:11px}}
