/*!
 * AkihiroLabs — Cyber Clock — styles
 * https://github.com/AkihiroZayar/cyber-clock
 */
    * {
        margin: 0;
        padding: 0;
        box-sizing: border-box;
    }

    body {
        min-height: 100vh;
        overflow: hidden;
        font-family: Arial, Helvetica, sans-serif;
        background: #05060a;
        color: white;
        display: flex;
        justify-content: center;
        align-items: center;
    }

    canvas {
        position: fixed;
        inset: 0;
        z-index: 0;
    }

    .container {
        position: relative;
        z-index: 2;
        width: min(900px, 90%);
        text-align: center;
    }

    .top {
        font-size: 13px;
        letter-spacing: 5px;
        text-transform: uppercase;
        opacity: 0.5;
        margin-bottom: 30px;
    }

    .clock {
        font-size: clamp(70px, 13vw, 150px);
        font-weight: 700;
        letter-spacing: -5px;
        line-height: 1;
        text-shadow:
            0 0 10px rgba(0,255,255,.7),
            0 0 40px rgba(0,255,255,.25);
    }

    .seconds {
        color: #00ffff;
    }

    .date {
        margin-top: 25px;
        font-size: 16px;
        letter-spacing: 4px;
        text-transform: uppercase;
        opacity: .65;
    }

    .card {
        margin: 50px auto 0;
        width: min(600px, 100%);
        padding: 25px;
        border: 1px solid rgba(255,255,255,.12);
        background: rgba(255,255,255,.05);
        backdrop-filter: blur(15px);
        border-radius: 20px;
        box-shadow: 0 20px 60px rgba(0,0,0,.4);
    }

    .message {
        font-size: 18px;
        margin-bottom: 20px;
    }

    button {
        border: 1px solid rgba(0,255,255,.5);
        background: rgba(0,255,255,.08);
        color: #00ffff;
        padding: 12px 25px;
        border-radius: 999px;
        cursor: pointer;
        font-size: 14px;
        transition: .25s;
    }

    button:hover {
        background: #00ffff;
        color: #05060a;
        box-shadow: 0 0 30px rgba(0,255,255,.5);
        transform: translateY(-2px);
    }

    .focus {
        margin-top: 18px;
        font-size: 12px;
        opacity: .4;
    }

    .focus-mode {
        background: #000;
    }

    .focus-mode .card,
    .focus-mode .date,
    .focus-mode .top {
        opacity: 0;
        pointer-events: none;
    }

    .focus-mode .clock {
        transform: scale(1.15);
    }

    .clock {
        transition: transform .5s ease;
    }

/* Install button (shown only when the browser offers install) */
.install-btn[hidden] { display: none; }
.install-btn { margin-left: 8px; opacity: .8; }
