* {
            -webkit-font-smoothing: antialiased;
            -moz-osx-font-smoothing: grayscale;
        }
        body {
            font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
        }
        .btn-primary {
            background-color: #4f46e5;
            color: white;
            padding: 10px 20px;
            border-radius: 8px;
            font-weight: 600;
            transition: all 0.3s ease;
            border: none;
            cursor: pointer;
            display: inline-block;
            text-decoration: none;
        }
        .btn-primary:hover {
            background-color: #4338ca;
            transform: translateY(-2px);
            box-shadow: 0 10px 15px -3px rgba(79, 70, 229, 0.3);
        }
        .btn-secondary {
            background-color: transparent;
            color: #4f46e5;
            padding: 10px 20px;
            border-radius: 8px;
            font-weight: 600;
            transition: all 0.3s ease;
            border: 2px solid #4f46e5;
            cursor: pointer;
            display: inline-block;
            text-decoration: none;
        }
        .btn-secondary:hover {
            background-color: #4f46e5;
            color: white;
        }
        .toast {
            position: fixed;
            bottom: 1rem;
            right: 1rem;
            padding: 1rem 1.5rem;
            border-radius: 8px;
            color: white;
            z-index: 50;
            animation: slideInRight 0.3s ease-out;
        }
        @keyframes slideInRight {
            from {
                opacity: 0;
                transform: translateX(100px);
            }
            to {
                opacity: 1;
                transform: translateX(0);
            }
        }
        .toast.success {
            background-color: #10b981;
        }
        .toast.error {
            background-color: #ef4444;
        }
        .siteable-modal-overlay {
            position: fixed;
            inset: 0;
            z-index: 9999;
            display: none;
            align-items: center;
            justify-content: center;
            padding: 16px;
            background: rgba(9, 9, 11, 0.55);
        }
        .siteable-modal-overlay.active {
            display: flex;
        }
        .siteable-modal-card {
            width: min(92vw, 420px);
            border-radius: 14px;
            background: #ffffff;
            color: #18181b;
            border: 1px solid #e4e4e7;
            box-shadow: 0 20px 60px rgba(9, 9, 11, 0.25);
            padding: 16px;
        }
        .siteable-modal-title {
            margin: 0 0 8px 0;
            font-size: 15px;
            font-weight: 700;
        }
        .siteable-modal-message {
            margin: 0 0 12px 0;
            font-size: 14px;
            line-height: 1.45;
            color: #3f3f46;
        }
        .siteable-modal-actions {
            display: flex;
            justify-content: flex-end;
            gap: 8px;
        }
        .siteable-modal-btn {
            appearance: none;
            border: 1px solid #d4d4d8;
            border-radius: 8px;
            padding: 8px 12px;
            font-size: 13px;
            font-weight: 600;
            cursor: pointer;
            background: #ffffff;
            color: #18181b;
        }
        .siteable-modal-btn:hover {
            background: #f4f4f5;
        }
        .siteable-modal-btn--solid {
            background: #18181b;
            color: #ffffff;
            border-color: #18181b;
        }
        .siteable-modal-btn--solid:hover {
            background: #27272a;
        }
        table {
            width: 100%;
            border-collapse: collapse;
            margin-top: 1.5rem;
        }
        table thead {
            background-color: #f4f4f5;
        }
        table th {
            padding: 12px;
            text-align: left;
            font-weight: 600;
            color: #18181b;
            border-bottom: 2px solid #e4e4e7;
        }
        table td {
            padding: 12px;
            border-bottom: 1px solid #e4e4e7;
            color: #52525b;
        }
        table tbody tr:hover {
            background-color: #fafafa;
        }
        .form-group {
            margin-bottom: 1.5rem;
        }
        .form-group label {
            display: block;
            font-size: 14px;
            font-weight: 600;
            color: #18181b;
            margin-bottom: 6px;
        }
        .form-group input {
            width: 100%;
            padding: 10px 12px;
            border: 1px solid #d4d4d8;
            border-radius: 8px;
            font-size: 14px;
            transition: border-color 0.3s ease;
        }
        .form-group input:focus {
            outline: none;
            border-color: #4f46e5;
            box-shadow: 0 0 0 3px rgba(79, 70, 229, 0.1);
        }