.nc-stage { background: #000; cursor: zoom-in; }
.nc-stage.is-full { cursor: default; }
.nc-clock { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); color: #ff0000; font-size: 80px; line-height: 1;
  font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif; font-variant-numeric: tabular-nums;
  white-space: nowrap; text-align: center; pointer-events: none; transition: transform 3s ease-in-out, opacity 2s; }
.nc-time { display: flex; align-items: baseline; justify-content: center; }
.nc-clock[data-style="light"] .nc-hm { font-weight: 200; letter-spacing: -.02em; }
.nc-clock[data-style="bold"] .nc-hm { font-weight: 700; letter-spacing: -.03em; }
.nc-s { font-size: .36em; margin-left: .25em; font-weight: 400; }
.nc-ap { font-size: .2em; margin-left: .45em; font-weight: 600; letter-spacing: .06em; align-self: flex-start; margin-top: .5em; }
.nc-date { font-size: .16em; margin-top: .4em; font-weight: 500; letter-spacing: .04em; }
.nc-clock [hidden] { display: none; }
.nc-clock[data-style="seg"] .nc-time { align-items: flex-end; }
.nc-clock[data-style="seg"] .nc-hm, .nc-clock[data-style="seg"] .nc-s { display: inline-flex; align-items: flex-end; gap: .07em; }
.nc-dig { height: .9em; width: .54em; fill: currentColor; transform: skewX(-6deg); }
.nc-colon { height: .9em; width: .22em; fill: currentColor; }
.nc-blank { display: inline-block; width: .54em; }
.nc-clock[data-style="seg"] .nc-s { margin-left: .2em; font-size: .4em; }
.nc-stage.is-full .fs-btn { background: rgba(255, 255, 255, .06); color: rgba(255, 255, 255, .38); }
.nc-stage .st-hint.nc-dimhint { background: rgba(255, 255, 255, .05); color: rgba(255, 255, 255, .35); }
.nc-sw { display: inline-block; width: 12px; height: 12px; border-radius: 50%; margin-right: 6px; vertical-align: -1px; border: 1px solid rgba(0, 0, 0, .25); }
.nc-night { display: grid; grid-template-columns: auto 1fr auto 1fr; gap: 8px; align-items: center; margin: 10px 0; }
.nc-night label { font-weight: 500; }
.nc-night input { min-width: 0; width: 100%; }
.nc-night[hidden], #nc-night-lvl[hidden] { display: none; }
.ctl label.switch { justify-content: flex-start; }
@media (prefers-reduced-motion: reduce) { .nc-clock { transition: opacity 2s; } }
