   * {
            box-sizing: border-box;
            margin: 0;
            padding: 0;
        }

        body {
            font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
            background-color: #f5f5f7;
            color: #1d1d1f; 
            display: flex;
            flex-direction: column;
            min-height: 100vh;
            align-items: center;
            padding: 60px 20px;
            -webkit-font-smoothing: antialiased;
        }

        header {
            text-align: center;
            margin-bottom: 60px;
            max-width: 600px;
        }

        header h1 {
            font-size: 2.6rem;
            font-weight: 700;
            letter-spacing: -0.03em;
            margin-bottom: 12px;
        }

        header p {
            font-size: 1rem;
            color: #86868b;
            font-weight: 400;
            letter-spacing: -0.01em;
        }

        .grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(290px, 1fr));
            gap: 26px;
            width: 100%;
            max-width: 1050px;
        }

        .card {
            background: #ffffff;
            border-radius: 22px; 
            padding: 28px;
            text-decoration: none;
            color: inherit;
            border: 1px solid rgba(0, 0, 0, 0.04);
            box-shadow: 0 4px 12px rgba(0, 0, 0, 0.02); 
            transition: transform 0.2s cubic-bezier(0.25, 1, 0.5, 1), box-shadow 0.2s cubic-bezier(0.25, 1, 0.5, 1);
            display: flex;
            flex-direction: column;
            justify-content: space-between;
            height: 200px;
        }

        .card:hover {
            transform: scale(1.02);
            box-shadow: 0 14px 34px rgba(0, 0, 0, 0.06);
            border-color: rgba(0, 0, 0, 0.08);
        }

        .mac-buttons {
            display: flex;
            gap: 6px;
            margin-bottom: 20px;
        }

        .mac-dot {
            width: 10px;
            height: 10px;
            border-radius: 50%;
            background-color: #e3e3e7; 
            transition: background-color 0.2s ease;
        }

        .card:hover .close { background-color: #ff5f56; }
        .card:hover .minimize { background-color: #ffbd2e; }
        .card:hover .maximize { background-color: #27c93f; }

        .card-header {
            display: flex;
            align-items: center;
            justify-content: space-between;
            margin-bottom: 10px;
        }

        .card h2 {
            font-size: 1.25rem;
            font-weight: 600;
            letter-spacing: -0.01em;
        }

        .status-online {
            width: 8px;
            height: 8px;
            border-radius: 50%;
            background-color: #34c759; 
            box-shadow: 0 0 8px rgba(52, 199, 89, 0.4);
        }

        .card p {
            font-size: 0.92rem;
            color: #86868b;
            line-height: 1.45;
            font-weight: 400;
            margin-bottom: auto; 
        }

        .card-footer {
            display: flex;
            align-items: center;
            font-size: 0.88rem;
            font-weight: 500;
            color: #0066cc; 
            margin-top: 15px;
        }

        .arrow {
            margin-left: 5px;
            transition: transform 0.2s ease;
        }

        .card:hover .arrow {
            transform: translateX(4px); 
        }

        footer {
            margin-top: auto;
            padding-top: 80px;
            font-size: 0.8rem;
            color: #86868b;
            text-align: center;
        }
