From ca60515dfc98b5f5017f4ab82ace52cab732bad9 Mon Sep 17 00:00:00 2001 From: isaacclad Date: Mon, 8 Jun 2026 22:49:27 +0000 Subject: [PATCH] Unify primary buttons with gradient pill design across the app. Add shared btn-primary components and plus icons on create/new actions for a consistent Ladill UI. Co-authored-by: Cursor --- resources/css/app.css | 54 +++++++++++++++++++ .../views/components/btn/create.blade.php | 17 ++++++ .../views/components/btn/primary.blade.php | 16 ++++++ .../views/email/account/developers.blade.php | 2 +- .../views/email/account/settings.blade.php | 4 +- resources/views/email/account/team.blade.php | 2 +- resources/views/email/dashboard.blade.php | 2 +- resources/views/email/domains/index.blade.php | 2 +- resources/views/email/domains/show.blade.php | 2 +- .../views/email/mailboxes/create.blade.php | 2 +- .../views/email/mailboxes/index.blade.php | 4 +- .../views/email/mailboxes/show.blade.php | 4 +- .../views/email/mailboxes/upgrade.blade.php | 2 +- resources/views/hosting/account.blade.php | 8 +-- .../hosting/account/developers.blade.php | 2 +- .../views/hosting/account/settings.blade.php | 2 +- .../views/hosting/account/team.blade.php | 2 +- resources/views/hosting/dashboard.blade.php | 2 +- resources/views/hosting/panel/apps.blade.php | 2 +- resources/views/hosting/panel/cron.blade.php | 2 +- .../views/hosting/panel/databases.blade.php | 2 +- .../views/hosting/panel/domains.blade.php | 2 +- resources/views/hosting/panel/files.blade.php | 14 ++--- resources/views/hosting/panel/php.blade.php | 4 +- .../views/hosting/panel/settings.blade.php | 6 +-- resources/views/hosting/panel/ssl.blade.php | 4 +- resources/views/partials/afia.blade.php | 2 +- .../partials/mobile-bottom-nav.blade.php | 2 +- resources/views/partials/topbar.blade.php | 2 +- 29 files changed, 129 insertions(+), 42 deletions(-) create mode 100644 resources/views/components/btn/create.blade.php create mode 100644 resources/views/components/btn/primary.blade.php diff --git a/resources/css/app.css b/resources/css/app.css index 3f3c8d4..46a1e4b 100644 --- a/resources/css/app.css +++ b/resources/css/app.css @@ -14,3 +14,57 @@ [x-cloak] { display: none !important; } + +@layer components { + .btn-primary { + display: inline-flex; + align-items: center; + justify-content: center; + gap: 0.5rem; + border-radius: 9999px; + background-image: linear-gradient(to right, rgb(79 70 229), rgb(124 58 237)); + padding: 0.5rem 1rem; + font-size: 0.875rem; + line-height: 1.25rem; + font-weight: 600; + color: #fff; + box-shadow: 0 1px 2px 0 rgb(0 0 0 / 0.05); + transition: filter 0.15s ease; + } + + .btn-primary:hover { + filter: brightness(0.92); + } + + .btn-primary:disabled { + opacity: 0.6; + pointer-events: none; + } + + .btn-primary-sm { + padding: 0.375rem 0.75rem; + font-size: 0.75rem; + line-height: 1rem; + } + + .btn-primary-lg { + padding: 0.625rem 1.25rem; + } + + .btn-fab { + display: inline-flex; + height: 2.75rem; + width: 2.75rem; + align-items: center; + justify-content: center; + border-radius: 9999px; + background-image: linear-gradient(to right, rgb(79 70 229), rgb(124 58 237)); + color: #fff; + box-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1); + transition: filter 0.15s ease; + } + + .btn-fab:hover { + filter: brightness(0.92); + } +} diff --git a/resources/views/components/btn/create.blade.php b/resources/views/components/btn/create.blade.php new file mode 100644 index 0000000..caa7d06 --- /dev/null +++ b/resources/views/components/btn/create.blade.php @@ -0,0 +1,17 @@ +@props([ + 'href' => null, + 'type' => 'button', +]) + +@php + $tag = $href ? 'a' : 'button'; +@endphp + +<{{ $tag }} + @if ($href) href="{{ $href }}" @endif + @if ($tag === 'button') type="{{ $type }}" @endif + {{ $attributes->class(['btn-primary']) }} +> + + {{ $slot }} + diff --git a/resources/views/components/btn/primary.blade.php b/resources/views/components/btn/primary.blade.php new file mode 100644 index 0000000..b9cb905 --- /dev/null +++ b/resources/views/components/btn/primary.blade.php @@ -0,0 +1,16 @@ +@props([ + 'href' => null, + 'type' => 'button', +]) + +@php + $tag = $href ? 'a' : 'button'; +@endphp + +<{{ $tag }} + @if ($href) href="{{ $href }}" @endif + @if ($tag === 'button') type="{{ $type }}" @endif + {{ $attributes->class(['btn-primary']) }} +> + {{ $slot }} + diff --git a/resources/views/email/account/developers.blade.php b/resources/views/email/account/developers.blade.php index ea2649a..d7fa0cd 100644 --- a/resources/views/email/account/developers.blade.php +++ b/resources/views/email/account/developers.blade.php @@ -30,7 +30,7 @@ class="mt-1 w-full rounded-lg border border-slate-200 bg-slate-50 px-3 py-2 text-sm focus:border-indigo-300 focus:bg-white focus:outline-none focus:ring-2 focus:ring-indigo-100"> @error('name')

{{ $message }}

@enderror - + diff --git a/resources/views/email/account/settings.blade.php b/resources/views/email/account/settings.blade.php index 54b854a..8d4e4b1 100644 --- a/resources/views/email/account/settings.blade.php +++ b/resources/views/email/account/settings.blade.php @@ -63,7 +63,7 @@ @error('mailbox_address')

{{ $message }}

@enderror - + @endif @@ -104,7 +104,7 @@ - + @endsection diff --git a/resources/views/email/account/team.blade.php b/resources/views/email/account/team.blade.php index 70c9fef..c1baeaa 100644 --- a/resources/views/email/account/team.blade.php +++ b/resources/views/email/account/team.blade.php @@ -23,7 +23,7 @@ - +

Admins can manage mailboxes and the team. Members can manage mailboxes. Invitees join by signing in with that email.

diff --git a/resources/views/email/dashboard.blade.php b/resources/views/email/dashboard.blade.php index d48d16b..34d9b43 100644 --- a/resources/views/email/dashboard.blade.php +++ b/resources/views/email/dashboard.blade.php @@ -7,7 +7,7 @@

Overview

Your mailboxes at a glance.

- New mailbox + New mailbox @if($error)
{{ $error }}
@endif diff --git a/resources/views/email/domains/index.blade.php b/resources/views/email/domains/index.blade.php index 6ae7e6c..f77bd26 100644 --- a/resources/views/email/domains/index.blade.php +++ b/resources/views/email/domains/index.blade.php @@ -9,7 +9,7 @@
@csrf - +
@if(!empty($domains)) diff --git a/resources/views/email/domains/show.blade.php b/resources/views/email/domains/show.blade.php index 0d4c453..f1c75b5 100644 --- a/resources/views/email/domains/show.blade.php +++ b/resources/views/email/domains/show.blade.php @@ -40,7 +40,7 @@
@csrf - + DNS changes can take time to propagate.
@else diff --git a/resources/views/email/mailboxes/create.blade.php b/resources/views/email/mailboxes/create.blade.php index ec3f8ba..539c947 100644 --- a/resources/views/email/mailboxes/create.blade.php +++ b/resources/views/email/mailboxes/create.blade.php @@ -86,7 +86,7 @@ @error('password')

{{ $message }}

@enderror - diff --git a/resources/views/email/mailboxes/index.blade.php b/resources/views/email/mailboxes/index.blade.php index 284eeac..f3a9f24 100644 --- a/resources/views/email/mailboxes/index.blade.php +++ b/resources/views/email/mailboxes/index.blade.php @@ -4,7 +4,7 @@

Mailboxes

- New mailbox + New mailbox
@if($error)
{{ $error }}
@endif @@ -12,7 +12,7 @@

No mailboxes yet

Verify a domain, then create a mailbox like you@yourdomain.com.

- Create mailbox + Create mailbox
@else
diff --git a/resources/views/email/mailboxes/show.blade.php b/resources/views/email/mailboxes/show.blade.php index e5ee875..6d6fc6a 100644 --- a/resources/views/email/mailboxes/show.blade.php +++ b/resources/views/email/mailboxes/show.blade.php @@ -20,7 +20,7 @@
IMAP
{{ $host }}:993 (SSL)
SMTP
{{ $host }}:587 (STARTTLS)
- Open Webmail ↗ + Open Webmail ↗
@php @@ -46,7 +46,7 @@

@if($quotaMb < $maxMb) - Upgrade + Upgrade @else Top plan @endif diff --git a/resources/views/email/mailboxes/upgrade.blade.php b/resources/views/email/mailboxes/upgrade.blade.php index e6c6a4d..ef6211d 100644 --- a/resources/views/email/mailboxes/upgrade.blade.php +++ b/resources/views/email/mailboxes/upgrade.blade.php @@ -44,7 +44,7 @@ @error('quota_mb')

{{ $message }}

@enderror - diff --git a/resources/views/hosting/account.blade.php b/resources/views/hosting/account.blade.php index f2a9431..9cd2d28 100644 --- a/resources/views/hosting/account.blade.php +++ b/resources/views/hosting/account.blade.php @@ -176,7 +176,7 @@ @endif @@ -557,7 +557,7 @@
@@ -624,7 +624,7 @@
- + Open Control Panel diff --git a/resources/views/hosting/account/developers.blade.php b/resources/views/hosting/account/developers.blade.php index 214f429..6b1dce9 100644 --- a/resources/views/hosting/account/developers.blade.php +++ b/resources/views/hosting/account/developers.blade.php @@ -27,7 +27,7 @@ class="mt-1 w-full rounded-lg border border-slate-200 bg-slate-50 px-3 py-2 text-sm focus:border-indigo-300 focus:bg-white focus:outline-none focus:ring-2 focus:ring-indigo-100"> @error('name')

{{ $message }}

@enderror
- + diff --git a/resources/views/hosting/account/settings.blade.php b/resources/views/hosting/account/settings.blade.php index ac142d8..ce20254 100644 --- a/resources/views/hosting/account/settings.blade.php +++ b/resources/views/hosting/account/settings.blade.php @@ -28,7 +28,7 @@ - + @endsection diff --git a/resources/views/hosting/account/team.blade.php b/resources/views/hosting/account/team.blade.php index 1045ce8..fbd5732 100644 --- a/resources/views/hosting/account/team.blade.php +++ b/resources/views/hosting/account/team.blade.php @@ -21,7 +21,7 @@ - +

Admins can manage hosting and the team. Members can manage hosting. Invitees join by signing in with that email.

diff --git a/resources/views/hosting/dashboard.blade.php b/resources/views/hosting/dashboard.blade.php index a363eb7..7404d1d 100644 --- a/resources/views/hosting/dashboard.blade.php +++ b/resources/views/hosting/dashboard.blade.php @@ -7,7 +7,7 @@

Overview

Your shared hosting at a glance.

- + New hosting diff --git a/resources/views/hosting/panel/apps.blade.php b/resources/views/hosting/panel/apps.blade.php index c252e98..b306be9 100644 --- a/resources/views/hosting/panel/apps.blade.php +++ b/resources/views/hosting/panel/apps.blade.php @@ -310,7 +310,7 @@

Install in a subfolder instead of the domain root.

- diff --git a/resources/views/hosting/panel/cron.blade.php b/resources/views/hosting/panel/cron.blade.php index 9ab3d6c..386337e 100644 --- a/resources/views/hosting/panel/cron.blade.php +++ b/resources/views/hosting/panel/cron.blade.php @@ -51,7 +51,7 @@

Use full paths for commands and scripts

- diff --git a/resources/views/hosting/panel/databases.blade.php b/resources/views/hosting/panel/databases.blade.php index 11686e7..7979f61 100644 --- a/resources/views/hosting/panel/databases.blade.php +++ b/resources/views/hosting/panel/databases.blade.php @@ -26,7 +26,7 @@ - diff --git a/resources/views/hosting/panel/domains.blade.php b/resources/views/hosting/panel/domains.blade.php index d342dda..ee0be0a 100644 --- a/resources/views/hosting/panel/domains.blade.php +++ b/resources/views/hosting/panel/domains.blade.php @@ -136,7 +136,7 @@

Leave empty to use default: public_html/domain.com

- diff --git a/resources/views/hosting/panel/files.blade.php b/resources/views/hosting/panel/files.blade.php index 7512933..9d873b6 100644 --- a/resources/views/hosting/panel/files.blade.php +++ b/resources/views/hosting/panel/files.blade.php @@ -57,7 +57,7 @@ {{-- Toolbar --}}
- @@ -203,7 +203,7 @@
- +
@@ -221,7 +221,7 @@
- +
@@ -236,7 +236,7 @@
- +
@@ -255,7 +255,7 @@

Relative to home directory, e.g. /public_html/backup

- +
@@ -273,7 +273,7 @@
- +
@@ -298,7 +298,7 @@
- +
diff --git a/resources/views/hosting/panel/php.blade.php b/resources/views/hosting/panel/php.blade.php index 7e2c0a6..e68f646 100644 --- a/resources/views/hosting/panel/php.blade.php +++ b/resources/views/hosting/panel/php.blade.php @@ -36,7 +36,7 @@ @endforeach - @@ -75,7 +75,7 @@

Maximum number of input variables (1000-10000)

- diff --git a/resources/views/hosting/panel/settings.blade.php b/resources/views/hosting/panel/settings.blade.php index 035dbbd..0b89a0d 100644 --- a/resources/views/hosting/panel/settings.blade.php +++ b/resources/views/hosting/panel/settings.blade.php @@ -34,7 +34,7 @@ - @@ -70,7 +70,7 @@ - @@ -117,7 +117,7 @@
{{ $sftpCommand }} - +
diff --git a/resources/views/hosting/panel/ssl.blade.php b/resources/views/hosting/panel/ssl.blade.php index 3750528..7371d45 100644 --- a/resources/views/hosting/panel/ssl.blade.php +++ b/resources/views/hosting/panel/ssl.blade.php @@ -55,7 +55,7 @@ @if(!$site->ssl_enabled)
@csrf - @@ -72,7 +72,7 @@
@include('components.icons.domain-globe', ['class' => 'mx-auto h-12 w-12 text-slate-300'])

No domains configured. Add a domain first to enable SSL.

- + Add Domain
diff --git a/resources/views/partials/afia.blade.php b/resources/views/partials/afia.blade.php index adc2c23..67eebd1 100644 --- a/resources/views/partials/afia.blade.php +++ b/resources/views/partials/afia.blade.php @@ -92,7 +92,7 @@
diff --git a/resources/views/partials/mobile-bottom-nav.blade.php b/resources/views/partials/mobile-bottom-nav.blade.php index 98d9b82..8a2e2b2 100644 --- a/resources/views/partials/mobile-bottom-nav.blade.php +++ b/resources/views/partials/mobile-bottom-nav.blade.php @@ -33,7 +33,7 @@
diff --git a/resources/views/partials/topbar.blade.php b/resources/views/partials/topbar.blade.php index 4225528..9fb06e8 100644 --- a/resources/views/partials/topbar.blade.php +++ b/resources/views/partials/topbar.blade.php @@ -84,7 +84,7 @@
@include('partials.afia-button', ['compact' => true]) @else - Sign in + Sign in @endauth @include('partials.launcher')