/* A snow-white galaxy with an icy blue horizon; the planet stays part of daily life. */
body[data-page="universe"] { --u-night:#e8f2fa;--u-ink:#29465f;--u-muted:#506d83;--u-tone:#739bb8;background:var(--u-night);overflow-x:clip; }
body[data-page="universe"]:has(.universe[data-palette="lagoon"]) { --u-night:#e4f1f1;--u-tone:#649e9a; }
body[data-page="universe"]:has(.universe[data-palette="violet"]) { --u-night:#eeedf7;--u-tone:#928aaf; }
body[data-page="universe"]:has(.universe[data-palette="ember"]) { --u-night:#f5eee9;--u-tone:#b69882; }
body[data-page="universe"] .scene,body[data-page="universe"] .bottom-nav { display:none; }
body[data-page="universe"] .mobile-shell { width:100%;max-width:none;min-height:100dvh;border:0;box-shadow:none;background:var(--u-night); }
body[data-page="universe"] .topbar { position:relative;z-index:3;max-width:880px;margin:auto;height:70px;padding:18px 26px;color:var(--u-ink);background:transparent;border:0; }
body[data-page="universe"] .wordmark { font-size:16px;font-weight:400;letter-spacing:-.3px;max-width:calc(100% - 42px); }
body[data-page="universe"] .preview-chip.settings-icon { margin-left:auto;padding:11px;width:40px;height:40px;background:none;border:0;color:#526f85; }
body[data-page="universe"] .preview-chip.settings-icon svg { width:17px;height:17px; }
body[data-page="universe"] #screen { padding:0;max-width:none;min-height:calc(100dvh - 70px); }
/* Keep sky tokens local so shared account dialogs retain their own colors. */
.universe { --ink:#29465f;--muted:#506d83;--line:#6487a42e;color-scheme:light;position:relative;isolation:isolate;max-width:880px;min-height:calc(100dvh - 70px);margin:0 auto;padding:0 26px calc(125px + env(safe-area-inset-bottom));color:var(--u-ink); }
.universe button { color:inherit;-webkit-tap-highlight-color:transparent; }
.universe button:focus-visible,.universe a:focus-visible,.universe input:focus-visible,.u-planet:focus-visible { outline:2px solid #456e92;outline-offset:4px; }
.universe svg { width:18px;height:18px;stroke-width:1.2;flex-shrink:0; }
.u-galaxy { position:fixed;inset:0;z-index:-2;width:100%;height:100dvh;pointer-events:none;opacity:1;mix-blend-mode:normal; }
.universe::before { content:'';position:fixed;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(180deg,transparent 18%,#eaf3fa18 40%,#f4f9fc73 75%,#eaf3fa85); }
.u-heading { position:relative;min-height:163px;display:flex;align-items:center;padding:6px 0 12px; }
.u-dateline { position:relative;z-index:2;padding-top:12px; }
.u-dateline p { font-size:11px;line-height:1.6;color:var(--u-muted);margin:0 0 9px; }
.u-dateline h1 { font-size:37px;line-height:1.35;font-weight:400;letter-spacing:-.04em;margin:0; }
.u-light-count { min-height:40px;display:block;font-size:11px;color:#526f86 !important;text-align:left; }
.u-world { position:absolute;top:3px;right:-8px;width:146px;height:146px; }
.u-planet { display:block;width:100%;height:100%;touch-action:pan-y;cursor:grab; }
.u-planet:active,.u-big-planet:active { cursor:grabbing; }
.u-surface-lights,.u-big-lights { position:absolute;inset:0;pointer-events:none; }
.u-surface-light { position:absolute;display:grid;place-items:center;width:36px;height:36px;transform:translate(-50%,-50%);transition:opacity .1s; }
.u-surface-light[hidden] { display:none; }
.u-surface-light i { width:3px;height:3px;border-radius:50%;background:#fff8df;box-shadow:0 0 4px 1px #ffefdccc,0 0 10px 3px #ffe4b26e; }
.u-world .u-surface-light { width:10px;height:10px; }
.u-world .u-surface-light i { width:2px;height:2px;box-shadow:0 0 4px 1px #fff2d3cc; }
button.u-surface-light { pointer-events:auto;cursor:pointer; }
.u-big-lights .u-surface-light i { width:4px;height:4px; }
.u-big-lights .u-surface-light:focus-visible { border-radius:50%; }
.u-big-lights .u-surface-light:hover i { box-shadow:0 0 8px 3px #fff0d4,0 0 18px 5px #ffe9c45e; }
.u-paths { display:flex;align-items:center;gap:23px;padding:4px 0 20px; }
.u-paths button { display:flex;gap:8px;align-items:center;font-size:12px;min-height:38px;color:#41627c; }
.u-paths svg { width:12px;height:12px;opacity:.65; }
.u-paths button:last-child { margin-left:auto; }
.u-moment { display:block;text-align:left;width:100%;padding:15px 0 29px;margin:0 0 6px; }
.u-moment>span { font-size:10px;color:#526f86; }
.u-moment blockquote { font-size:20px;line-height:1.85;font-weight:400;margin:10px 0 3px;letter-spacing:.02em; }
.u-moment small { display:flex;align-items:center;justify-content:flex-end;gap:7px;font-size:10px;color:#526f86; }
.u-moment small svg { width:11px;height:11px; }
.u-life-content { position:relative; }
.u-life-content .life-entrances { display:none; }
.u-life-content .today-sheet { border:0;background:none;box-shadow:none;padding:0; }
.u-life-content .section-title { margin-bottom:12px; }
.u-life-content .section-title h2 { font-size:23px;letter-spacing:-.5px;font-weight:400; }
.u-life-content .section-title>span { color:var(--u-muted);font-size:11px; }
.u-life-content .task-row { border-color:var(--line);padding-top:12px;padding-bottom:12px;min-height:73px;background:transparent; }
.u-life-content .task-copy { min-width:0; }
.u-life-content .task-copy>span { font-size:17px;color:var(--u-ink); }
.u-life-content .task-copy small,.u-life-content .task-time,.u-life-content .focus-clock { color:var(--u-muted); }
.u-life-content .task-check { border-color:#6a8fae; }
.u-life-content .task-check[aria-checked="true"] { border-color:var(--category); }
.u-life-content .task-add-toggle,.u-life-content .task-focus { color:#4d7392; }
.u-life-content .done-section { margin-top:26px; }
.u-life-content .done-section.is-only-section { margin-top:0; }
.u-life-content .today-note { color:var(--u-muted);font-size:12px; }
.u-life-content .task-swipe-actions { background:var(--u-night); }
.u-life-content .task-swipe-actions button { color:var(--u-ink); }
.u-life-content .task-editor input,.u-life-content .quiet-add-task input { background:transparent;color:var(--u-ink);border-color:var(--line); }
.u-life-content .task-editor select { color:var(--u-ink);background:#edf5fb; }
.u-life-content .mobile-time { margin-top:36px;padding-top:25px;border-top:1px solid var(--line); }
.u-life-content .mobile-time-heading h2 { font-size:22px; }
.u-life-content .time-periods button { color:var(--u-muted); }
.u-life-content .time-periods button[aria-pressed="true"] { color:var(--u-ink);border-color:var(--u-tone); }
.u-life-content :is(.time-range,.time-range button,.time-coverage,.time-categories strong,.time-source,.time-log summary small,.time-log-count,.time-show-all,.time-log-date,.time-log-clock,.time-log-row small,.time-log-duration,.time-empty,.mt-log-heading>span,.mt-filter) { color:var(--u-muted); }
.u-life-content .time-donut .time-total { fill:var(--u-ink); }
.u-life-content .time-donut .time-total-label { fill:var(--u-muted); }
.u-life-content .time-categories button { border-color:var(--line); }
.u-footer { display:flex;justify-content:space-between;gap:20px;padding-top:30px;font-size:10px;color:#57748b; }
.u-footer button { min-height:44px; }
.u-dock { position:fixed;z-index:8;left:50%;bottom:0;transform:translateX(-50%);width:min(100%,880px);display:grid;grid-template-columns:repeat(5,1fr);padding:9px 15px max(12px,env(safe-area-inset-bottom));background:linear-gradient(180deg,#eaf3fa05,#edf5fbd9 20%,#e8f2faf5 100%);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px); }
.u-dock button { position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:58px;gap:7px;color:#526f86;font-size:10px; }
.u-dock button[aria-current="page"] { color:#284d70; }
.u-dock button[aria-current="page"]::after { content:'';position:absolute;width:3px;height:3px;border-radius:50%;background:#4e7e9f;bottom:0; }
.u-dock .u-mira { gap:0;margin-top:-25px; }
.u-dock .u-spirit { width:54px;height:54px;filter:drop-shadow(0 1px 3px #7498b680) drop-shadow(0 0 7px #ffffff); }
.u-dock .u-mira span { margin-top:-4px;font-size:11px; }
.u-dock .u-mira small { color:#506c81;font-size:8px;line-height:1.5;white-space:nowrap; }
.u-sheet { width:min(100%,510px);max-width:100%;max-height:94dvh;color:#29465f;background:#eaf3fa;border:1px solid #ffffffa6;border-bottom:0;border-radius:22px 22px 0 0;padding:0;margin:auto auto 0;box-shadow:0 -20px 80px #4b71933d;isolation:isolate; }
.u-sheet::backdrop { background:#7897b266;backdrop-filter:blur(9px); }
.u-sheet-content { position:relative;z-index:0;padding:35px 27px max(35px,env(safe-area-inset-bottom)); }
.u-close { position:sticky;float:right;top:8px;margin:8px 9px -48px 0;z-index:6;display:grid;place-items:center;width:44px;height:44px;color:#3d607b !important; }
.u-sheet h2 { font-size:25px;font-weight:400;line-height:1.5;margin:10px 32px 23px 0;overflow-wrap:anywhere; }
.u-sheet-planet { height:92dvh;max-height:92dvh; }
.u-sheet-galaxy { position:absolute;inset:0;z-index:-1;width:100%;height:100%;pointer-events:none;opacity:.9; }
.u-sky-heading p,.u-detail-date { font-size:11px;line-height:1.6;color:#526f86;margin:0 0 8px; }
.u-sky-heading h2 { margin:0;font-size:27px; }
.u-big-world { position:relative;width:100%;aspect-ratio:1;max-width:405px;margin:0 auto; }
.u-big-planet { display:block;width:100%;height:100%;touch-action:pan-y;cursor:grab; }
.u-sky-tools { display:flex;justify-content:space-between;gap:15px;margin-top:-8px; }
.u-sky-tools button { display:flex;align-items:center;gap:7px;min-height:44px;font-size:11px;color:#3f627e; }
.u-sky-tools svg { width:13px;height:13px; }
.u-time { margin-top:21px; }
.u-time label { display:flex;justify-content:space-between;font-size:11px;color:#4d6f88; }
.u-time-range,.u-light input { width:100%;height:28px;accent-color:#6c98b9; }
.u-record-item { width:100%;display:flex;align-items:center;gap:13px;text-align:left;min-height:62px;padding:12px 0;border-bottom:1px solid #6b8fac30; }
.u-record-item time { flex:none;width:39px;font-size:10px;color:#506d83;font-family:system-ui; }
.u-record-item span { flex:1;font-size:14px;line-height:1.8;overflow-wrap:anywhere; }
.u-record-item svg { width:13px;height:13px;opacity:.55; }
.u-record-item b { font-size:19px;font-weight:400;color:#567b99; }
.u-record-item[aria-pressed="true"] b { color:#866c30;text-shadow:0 0 10px #ffefd1; }
.u-empty,.u-sheet-note { color:#506d83;font-size:12px;line-height:1.9;padding:12px 0; }
.u-detail-text { font-size:18px;line-height:1.95;white-space:pre-wrap;overflow-wrap:anywhere;margin:20px 0; }
.u-detail-image { width:100%;max-height:40dvh;object-fit:contain;display:block; }
.u-detail-actions { display:flex;justify-content:space-between;gap:16px;border-top:1px solid #6a8fa432;margin-top:27px;padding-top:10px; }
.u-detail-actions button,.u-detail-link { display:inline-flex;align-items:center;min-height:44px;font-size:12px;color:#3e637f; }
.u-parallel { margin-top:30px;padding-top:22px;border-top:1px solid #6a8fa432; }
.u-parallel p { font-size:12px;line-height:1.9;color:#4e6c84; }
.u-parallel blockquote { font-size:20px;line-height:1.9;margin:16px 0; }
.u-palette-grid { display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin:25px 0 34px; }
.u-palette { display:flex;flex-direction:column;align-items:center;gap:10px;font-size:12px; }
.u-palette i { display:block;width:43px;height:43px;border-radius:50%;background:radial-gradient(circle at 30% 30%,#f2f8fc,var(--tone) 40%,#7796ad); }
.u-palette[aria-pressed="true"] i { outline:1px solid #6586a4;outline-offset:5px; }
.u-light { display:block;color:#456780;font-size:12px;margin-top:25px; }
.u-save-status { color:#994e5d;font-size:12px; }
@media(min-width:760px) { .universe { padding-left:38px;padding-right:38px; }.u-heading { min-height:186px; }.u-world { width:168px;height:168px;right:14px;top:1px; }.u-dateline h1 { font-size:45px; }.u-life-content { max-width:660px; }.u-moment { max-width:620px; }.u-paths { max-width:660px;gap:35px; }.u-dock { padding-left:80px;padding-right:80px; }.u-sheet { border-radius:20px;margin:auto;max-height:92dvh; }.u-footer { max-width:660px; } }
@media(max-width:360px) { .universe { padding-left:21px;padding-right:21px; }.u-world { right:-16px; }.u-dateline h1 { font-size:32px; }.u-paths { gap:16px; }.u-moment blockquote { font-size:18px; } }
@media(prefers-reduced-motion:reduce) { .universe * { animation:none !important;transition:none !important; } }

/* Calendar detail keeps the same icy palette; recorded activity colors stay intact. */
.u-life-content .mt-calendar-head { background:#e4eff8f5;border-color:var(--line); }
.u-life-content :is(.mt-calendar-head button,.mt-axis-caption,.mt-hour-axis,.mt-month-weekdays,.mt-month-day small) { color:var(--u-muted); }
.u-life-content .mt-calendar-head button[aria-current="date"] strong,.u-life-content .mt-month-day.is-selected>span:first-child { color:var(--u-ink); }
.u-life-content .mt-month-day:hover { background:#ffffff66; }
.u-life-content .mt-time-block { color:var(--record-ink); }

.u-time-range,.u-light input { appearance:none;-webkit-appearance:none;background:transparent;cursor:pointer; }
.u-time-range::-webkit-slider-runnable-track,.u-light input::-webkit-slider-runnable-track { height:1px;background:#7596b180; }
.u-time-range::-webkit-slider-thumb,.u-light input::-webkit-slider-thumb { appearance:none;-webkit-appearance:none;width:9px;height:9px;margin-top:-4px;border:0;border-radius:50%;background:#618aa9;box-shadow:0 0 10px #ffffff80; }
.u-time-range::-moz-range-track,.u-light input::-moz-range-track { height:1px;background:#7596b180; }
.u-time-range::-moz-range-thumb,.u-light input::-moz-range-thumb { width:9px;height:9px;border:0;border-radius:50%;background:#618aa9; }

/* A distant horizon leaves the working area open and the sky uninterrupted. */
.universe::after { content:"";position:fixed;left:0;right:0;bottom:0;height:43dvh;z-index:-1;pointer-events:none;background:url("media/universe-snow-mountains-v1.png") center 66% / cover no-repeat;opacity:.7;mask-image:linear-gradient(transparent,black 35%);-webkit-mask-image:linear-gradient(transparent,black 35%); }
