body{min-height:100dvh;padding:clamp(var(--tyt-space-2), 1.8vh, var(--tyt-space-4)) clamp(var(--tyt-space-3), 2.4vw, var(--tyt-space-6));background:var(--tyt-app-paper);font-family:var(--tyt-font-body);letter-spacing:0;line-height:1.9;overflow:hidden}.section-change-banner{z-index:24;width:min(920px,100% - 32px);padding:clamp(var(--tyt-space-3), 2vw, var(--tyt-space-5)) clamp(var(--tyt-space-4), 3vw, var(--tyt-space-6));border:1px solid var(--tyt-app-line);border-radius:var(--tyt-app-radius-md);background:var(--tyt-app-accent);color:var(--tyt-app-accent-fg);box-shadow:var(--tyt-app-shadow-lg);text-align:center;font-size:clamp(1.25rem,3vw,2.2rem);font-weight:500;line-height:1.45;animation:.2s ease-out section-change-in;position:fixed;top:clamp(1rem,3vw,2rem);left:50%;transform:translate(-50%)}.section-change-banner.hidden{display:none}.viewer{place-items:center;width:min(100%,980px);height:calc(100dvh - clamp(1.1rem,3.6vh,2.4rem));margin:0 auto;display:grid;overflow:hidden}.viewer-stage{--tyt-clock-size:min(76vw, 62vh, 640px);grid-template-rows:auto auto minmax(0, var(--tyt-clock-size)) auto auto auto;justify-items:center;gap:clamp(var(--tyt-space-1), 1.2vh, var(--tyt-space-3));width:100%;max-height:100%;padding:clamp(var(--tyt-space-3), 2vw, var(--tyt-space-5));border:1px solid color-mix(in srgb, var(--tyt-app-line) 78%, transparent);border-radius:var(--tyt-app-radius-lg);background:color-mix(in srgb, var(--tyt-app-panel-bg) 86%, transparent);box-shadow:var(--tyt-app-shadow-lg);display:grid;overflow:hidden}.viewer-current{color:var(--tyt-app-navy);text-align:center;overflow-wrap:anywhere;margin:0;font-size:clamp(1.55rem,min(5vw,6vh),3.4rem);font-weight:300;line-height:1.18}.viewer-current-time{color:var(--tyt-app-accent-dark);font-variant-numeric:tabular-nums;text-align:center;margin:0;font-size:clamp(.82rem,min(2vw,2.6vh),1.15rem);font-weight:500;line-height:1.25}.viewer-stage .clock-wrap{min-height:0;width:var(--tyt-clock-size);height:var(--tyt-clock-size);background:radial-gradient(circle, var(--tyt-app-panel-bg) 0 54%, transparent 55%), radial-gradient(circle, color-mix(in srgb, var(--tyt-app-accent) 8%, transparent), transparent 68%);box-shadow:inset 0 0 0 var(--tyt-border-width) color-mix(in srgb, var(--tyt-app-line) 60%, transparent);border-radius:50%}.viewer-stage .clock{transform-origin:50%;width:100%;height:100%;transform:rotate(-90deg)scaleX(-1)}.viewer-stage .timer{color:var(--tyt-app-ink);letter-spacing:-.05em;font-size:clamp(3.2rem,min(12vw,15vh),8rem);font-weight:300;line-height:.9}.viewer-stage .clock-wrap[data-tone=warn] .timer{color:var(--tyt-app-warn)}.viewer-stage .clock-wrap[data-tone=danger] .timer{color:var(--tyt-app-danger)}.viewer-next{color:var(--tyt-app-ink);text-align:center;overflow-wrap:anywhere;margin:0;font-size:clamp(.85rem,min(1.8vw,2.4vh),1.15rem);font-weight:400;line-height:1.25}.viewer-next-time{color:var(--tyt-app-muted);font-variant-numeric:tabular-nums;margin:0;font-size:clamp(.8rem,min(1.7vw,2.2vh),1.05rem);font-weight:500;line-height:1.2}.viewer-status{min-height:1rem;color:var(--tyt-app-muted);padding:var(--tyt-space-1) var(--tyt-space-2);border:1px solid var(--tyt-app-line);border-radius:var(--tyt-app-radius-sm);background:var(--tyt-app-panel-bg);margin:0;font-size:.82rem}.viewer-back-link{color:var(--tyt-app-accent-dark);font-size:.9rem;font-weight:600}.viewer-back-link.hidden{display:none}.viewer-overlay{z-index:20;align-content:center;place-items:center;gap:clamp(var(--tyt-space-3), 2.8vw, var(--tyt-space-6));padding:clamp(var(--tyt-space-5), 5vw, var(--tyt-space-16));background:var(--tyt-app-color-scrim);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);text-align:center;animation:.22s ease-out overlay-fade;display:grid;position:fixed;inset:0;overflow:auto}.viewer-overlay-item{justify-items:center;gap:var(--tyt-space-3);color:var(--tyt-app-white);text-shadow:0 2px 5px var(--tyt-app-color-overlay-text-shadow);animation:.24s ease-out overlay-pop;display:grid}.viewer-overlay-emoji{filter:none;font-family:Apple Color Emoji,Segoe UI Emoji,Noto Color Emoji,sans-serif;font-size:clamp(4.8rem,16vw,11rem);line-height:.95;animation:.24s ease-out emoji-pop}.viewer-overlay-item strong{overflow-wrap:anywhere;max-width:min(1040px,92vw);font-size:clamp(2.1rem,6vw,5.2rem);font-weight:700;line-height:1.25}.viewer-overlay-text .viewer-overlay-emoji{font-size:clamp(3rem,8vw,5.2rem)}.viewer-overlay-text strong{max-height:54vh;font-size:clamp(2.15rem,6.4vw,5.2rem);display:block;overflow:auto}.viewer-overlay-text-medium strong{font-size:clamp(1.75rem,5.2vw,4rem);line-height:1.22}.viewer-overlay-text-long strong{max-height:62vh;font-size:clamp(1.15rem,4.2vw,3.1rem);line-height:1.2}.viewer-overlay.viewer-overlay-docked{padding:clamp(var(--tyt-space-2), 1.6vw, var(--tyt-space-4)) clamp(var(--tyt-space-24), 22vw, var(--tyt-space-24)) clamp(var(--tyt-space-2), 1.6vw, var(--tyt-space-4)) clamp(var(--tyt-space-4), 3vw, var(--tyt-space-8));background:var(--tyt-app-color-scrim-strong);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);align-content:end;animation:none;inset:auto 0 0;overflow:hidden}.viewer-overlay-docked .viewer-overlay-text{align-items:center;gap:var(--tyt-space-2);grid-auto-flow:column;animation:none}.viewer-overlay-docked .viewer-overlay-text .viewer-overlay-emoji{font-size:clamp(1.2rem,2.6vw,1.8rem);animation:none}.viewer-overlay-docked .viewer-overlay-text strong{max-height:18vh;font-size:clamp(1.05rem,2.8vw,1.9rem);line-height:1.3}.viewer-overlay:has(.viewer-overlay-signal):has(.viewer-overlay-text){gap:clamp(var(--tyt-space-2), 1.8vw, var(--tyt-space-4))}.viewer-overlay:has(.viewer-overlay-signal):has(.viewer-overlay-text) .viewer-overlay-signal .viewer-overlay-emoji{font-size:clamp(3.4rem,10vw,6.8rem)}.viewer-overlay:has(.viewer-overlay-signal):has(.viewer-overlay-text) .viewer-overlay-signal strong{font-size:clamp(1.8rem,4.8vw,3.8rem)}.viewer-overlay:has(.viewer-overlay-signal):has(.viewer-overlay-text) .viewer-overlay-text .viewer-overlay-emoji{font-size:clamp(2.4rem,6vw,4rem)}.viewer-overlay:has(.viewer-overlay-signal):has(.viewer-overlay-text) .viewer-overlay-text strong{font-size:clamp(1.9rem,5.2vw,4.2rem)}.viewer-overlay:has(.viewer-overlay-signal):has(.viewer-overlay-text-medium) .viewer-overlay-text strong{font-size:clamp(1.55rem,4.4vw,3.2rem)}.viewer-overlay:has(.viewer-overlay-signal):has(.viewer-overlay-text-long) .viewer-overlay-text strong{max-height:64vh;font-size:clamp(1.05rem,3.8vw,2.6rem);line-height:1.2}@keyframes overlay-fade{0%{background:var(--tyt-app-color-scrim-clear);-webkit-backdrop-filter:blur();backdrop-filter:blur()}to{background:var(--tyt-app-color-scrim);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}}@keyframes overlay-pop{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes section-change-in{0%{opacity:0;transform:translate(-50%,-10px)}to{opacity:1;transform:translate(-50%)}}@keyframes emoji-pop{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)rotate(0)}}@keyframes emoji-wobble{0%,to{transform:rotate(0)translateY(0)}20%{transform:rotate(-7deg)translateY(-8px)}42%{transform:rotate(6deg)translateY(4px)}64%{transform:rotate(-4deg)translateY(-3px)}82%{transform:rotate(2deg)translateY(1px)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (width<=700px){body{padding:var(--tyt-space-4)}.viewer-stage{--tyt-clock-size:min(100vw - 4.5rem, 56vh);border-radius:var(--tyt-app-radius-md)}}.viewer-fullscreen-hint{padding:var(--tyt-space-2) var(--tyt-space-3);border:1px dashed var(--tyt-app-line-strong);border-radius:var(--tyt-app-radius-sm);background:color-mix(in srgb, var(--tyt-app-panel-bg) 92%, transparent);color:var(--tyt-app-muted);text-align:center;cursor:pointer;margin:0;font-size:clamp(.78rem,2.4vw,.92rem)}.viewer-fullscreen-hint.hidden{display:none}.viewer-theme-toggle{z-index:23;min-height:40px;padding-inline:var(--tyt-space-3);background:var(--tyt-app-panel-bg);font-size:.78rem;position:fixed;bottom:clamp(.6rem,2vw,1rem);right:clamp(.6rem,2vw,1rem)}.viewer-paused{z-index:2;padding:var(--tyt-space-1) var(--tyt-space-3);white-space:nowrap;border:1px solid var(--tyt-app-clock-warn);background:var(--tyt-app-clock-warn-soft);width:fit-content;color:var(--tyt-app-clock-warn);text-align:center;border-radius:999px;margin:0;font-size:clamp(.85rem,2vh,1.05rem);font-weight:700;position:absolute;top:16%;left:50%;transform:translate(-50%)}
