14 lines
5.5 KiB
PHP
14 lines
5.5 KiB
PHP
@php
|
|
$dedicated = in_array(request()->getHost(), ['sonardesk.absdev.net', 'sonardesk.co.uk', 'www.sonardesk.co.uk'], true);
|
|
$sdBase = $dedicated ? '' : '/sonardesk';
|
|
@endphp
|
|
<!doctype html>
|
|
<html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width,initial-scale=1">
|
|
<title>@yield('title', 'SonarDesk') · ABSDEV</title><meta name="description" content="SonarDesk — native SonarQube monitoring for macOS.">
|
|
<style>
|
|
:root{color-scheme:dark;--navy:#0b1629;--gold:#e6bd6b;--muted:#a9b8ce;--border:#293953;--text:#f1f5fc}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(ellipse at 85% -10%,#1d385b 0,transparent 42%),#0b1629;color:var(--text);font:16px/1.65 system-ui,-apple-system,sans-serif}a{color:inherit;text-decoration:none}a:hover{color:var(--gold)}.sd-container{width:min(1440px,calc(100% - 64px));margin:auto}.sd-header{border-bottom:1px solid var(--border);background:#0a1525e8;position:sticky;top:0;z-index:30;backdrop-filter:blur(18px)}.sd-header-inner{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:26px}.sd-brand{font-size:26px;font-weight:850;letter-spacing:-1.3px;white-space:nowrap}.sd-brand span{color:var(--gold)}.sd-nav{display:flex;align-items:center;gap:clamp(12px,2vw,30px);flex-wrap:wrap}.sd-nav a{font-size:14px;color:#c6d3e6}.sd-nav a[aria-current=page],.sd-nav a:hover{color:var(--gold)}.sd-nav .sd-nav-cta{background:var(--gold);color:#101c30;padding:9px 16px;border-radius:8px;font-weight:750}.sd-main{min-height:65vh}.sd-hero{padding:94px 0 65px;max-width:920px}.sd-kicker{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);font-weight:800}.sd-hero h1{font-size:clamp(43px,5.5vw,78px);line-height:1.07;letter-spacing:-.055em;margin:14px 0 22px}.sd-lead{font-size:clamp(17px,2vw,22px);color:#b9c8dd;max-width:760px;line-height:1.65}.sd-actions{display:flex;gap:12px;flex-wrap:wrap;margin:28px 0}.sd-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--gold);color:#101c30;border:1px solid var(--gold);border-radius:9px;padding:12px 20px;font-weight:800;font-size:14px}.sd-button:hover{background:#f3d390;color:#101c30}.sd-button.secondary{background:transparent;color:#eef4ff;border-color:#425575}.sd-button.secondary:hover{border-color:var(--gold);color:var(--gold)}.sd-section{padding:34px 0 65px}.sd-section-head{display:flex;justify-content:space-between;align-items:end;gap:24px;flex-wrap:wrap;margin-bottom:24px}.sd-section h2{font-size:clamp(26px,3vw,38px);letter-spacing:-.035em;margin:0 0 8px}.sd-section p{color:#b3c2d8}.sd-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.sd-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.sd-card{min-width:0;background:linear-gradient(150deg,#192941,#101d30);border:1px solid #30425d;border-radius:14px;padding:26px}.sd-card h2,.sd-card h3{margin:0 0 9px;line-height:1.3}.sd-card p{color:#b5c3d6;margin:8px 0 16px}.sd-card .sd-actions{margin-bottom:0}.sd-meta{color:#aabbd2;font-size:13px}.sd-badge{display:inline-block;background:#e6bd6b18;color:var(--gold);border:1px solid #e6bd6b60;border-radius:99px;padding:3px 11px;font-size:12px;font-weight:750}.sd-list{display:grid;gap:12px}.sd-row{display:flex;align-items:center;justify-content:space-between;gap:22px;background:#15243a;border:1px solid var(--border);border-radius:12px;padding:20px 24px}.sd-row h3{margin:0 0 4px}.sd-row p{margin:4px 0;color:#b2c1d6}.sd-row-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center;flex-shrink:0}.sd-text{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.75;color:#c6d3e4}.sd-footer{margin-top:60px;border-top:1px solid var(--border);padding:32px 0;color:#98acc8}.sd-footer-inner{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}.sd-footer a{margin-left:18px}.sd-price{font-size:32px;font-weight:850;color:#fff}.sd-muted{color:#aabbd2}.sd-empty{border:1px dashed #465a78;border-radius:12px;padding:28px;color:#b8c7db}.sd-checks{padding-left:20px;color:#c0cde0}.sd-checks li{margin:8px 0}code{overflow-wrap:anywhere}@media(max-width:900px){.sd-grid,.sd-grid.two{grid-template-columns:1fr 1fr}.sd-header-inner{align-items:flex-start;flex-direction:column;padding:16px 0}.sd-nav{gap:14px}.sd-hero{padding:65px 0 40px}}@media(max-width:650px){.sd-container{width:calc(100% - 36px)}.sd-grid,.sd-grid.two{grid-template-columns:1fr}.sd-row{align-items:stretch;flex-direction:column}.sd-row-actions{flex-shrink:1}.sd-header{position:static}.sd-nav a{font-size:13px}.sd-hero h1{font-size:43px}.sd-card{padding:21px}}
|
|
</style></head><body>
|
|
<header class="sd-header"><div class="sd-container sd-header-inner"><a class="sd-brand" href="{{ $sdBase ?: '/' }}">Sonar<span>Desk</span></a><nav class="sd-nav" aria-label="SonarDesk navigation"><a href="{{ $sdBase ?: '/' }}">Overview</a><a href="{{ $sdBase }}/features">Features</a><a href="{{ $sdBase }}/pricing">Pricing</a><a href="{{ route('sonardesk.downloads') }}">Downloads</a><a href="{{ route('account.sonardesk.index') }}">My licences</a><a href="{{ url('/') }}">ABSDEV</a><a class="sd-nav-cta" href="{{ route('sonardesk.buy') }}">Get SonarDesk</a></nav></div></header>
|
|
<main class="sd-container sd-main">@yield('content')</main>
|
|
<footer class="sd-footer"><div class="sd-container sd-footer-inner"><span>SonarDesk by ABSDEV · Native macOS software</span><div><a href="{{ route('sonardesk.downloads') }}">Downloads</a><a href="{{ route('sonardesk.buy') }}">Licensing</a><a href="{{ route('account.sonardesk.index') }}">Account</a></div></div></footer></body></html>
|