{{--
    AGB.

    Written from what this software actually does — the checkout, the withdrawal
    handling in App\Services\Billing\WithdrawalRight, the capacity queue in
    App\Provisioning\Steps\Customer\ReserveResources, the two account-deletion
    sweeps in app/Console/Commands, the cancellation in ConfirmCancelPackage.
    Nothing here promises anything the code does not do, and no availability
    figure or liability cap has been invented: where the statute already says it,
    the statute is referred to rather than restated with numbers nobody checked.

    The company data comes from CompanyProfile so this page and the invoices
    cannot drift apart. Filling in the real register number in the console fixes
    it here too.

    This is the operator's text, not a lawyer's opinion. It should be read by one
    before it is relied on in a dispute.
--}}
@php
    $company = App\Support\CompanyProfile::all();
    $vat = rtrim(rtrim(number_format(App\Support\CompanyProfile::taxRate(), 1, ',', '.'), '0'), ',');
    $setup = App\Support\CompanyProfile::setupFeeCents();
    $unverifiedDays = App\Console\Commands\PruneUnverifiedAccounts::AFTER_DAYS;
@endphp

<div class="mt-10 space-y-8 rounded-xl border border-line bg-surface p-8 shadow-xs lg:p-10">

    <p class="text-sm text-muted">Fassung vom {{ now()->local()->isoFormat('D. MMMM YYYY') }}</p>

    <section class="space-y-3">
        <h2 class="text-md font-bold tracking-[-0.01em] text-ink">1. Vertragspartner und Geltungsbereich</h2>
        <p class="text-md leading-relaxed text-body">
            Diese Allgemeinen Geschäftsbedingungen gelten für alle Verträge zwischen
            {{ $company['name'] }}, {{ $company['address'] }}, {{ $company['postcode'] }} {{ $company['city'] }},
            {{ $company['country'] }} (im Folgenden „CluPilot“) und ihren Kundinnen und Kunden über die
            Bereitstellung und den Betrieb von Nextcloud-Instanzen und der dazugehörigen Zusatzleistungen.
            Die vollständigen Unternehmensdaten stehen im <a href="{{ route('legal.impressum') }}" class="font-medium text-accent-text underline-offset-4 hover:underline">Impressum</a>.
        </p>
        <p class="text-md leading-relaxed text-body">
            Abweichende Bedingungen des Kunden werden nicht Vertragsinhalt, auch wenn CluPilot ihnen nicht
            ausdrücklich widerspricht.
        </p>
    </section>

    <section class="space-y-3">
        <h2 class="text-md font-bold tracking-[-0.01em] text-ink">2. Leistungsgegenstand</h2>
        <p class="text-md leading-relaxed text-body">
            CluPilot stellt eine betriebsfertige Nextcloud-Installation auf eigener Infrastruktur bereit und
            betreibt sie. Welcher Speicherplatz, welches Datenvolumen und wie viele Benutzerkonten enthalten
            sind, ergibt sich aus dem gebuchten Paket, das dem Kunden bei der Bestellung und im Kundenportal
            angezeigt wird. Zum Betrieb gehören das Einspielen von Sicherheits- und Versionsaktualisierungen,
            die Überwachung des Dienstes und die im Paket beschriebenen Sicherungen.
        </p>
        <p class="text-md leading-relaxed text-body">
            Der Standort der Instanz wird bei der Bestellung angezeigt. Ein Anspruch auf einen bestimmten
            Server besteht nicht; CluPilot darf eine Instanz auf einen anderen Server derselben Region
            verlegen, wenn der Betrieb dies erfordert.
        </p>
    </section>

    <section class="space-y-3">
        <h2 class="text-md font-bold tracking-[-0.01em] text-ink">3. Zustandekommen des Vertrags</h2>
        <p class="text-md leading-relaxed text-body">
            Die Darstellung der Pakete auf der Website ist kein Angebot, sondern eine Einladung zur Bestellung.
            Bestellt wird ausschließlich im Kundenportal. Der Kunde gibt seine Bestellung ab, indem er diese
            AGB durch Setzen des Häkchens annimmt und anschließend die Bezahlung abschließt. Ohne diese Annahme
            kann keine Bestellung abgeschickt werden.
        </p>
        <p class="text-md leading-relaxed text-body">
            Der Vertrag kommt mit dem Eingang der Zahlung zustande. Der Kunde erhält darüber eine Bestätigung
            per E-Mail; die Rechnung wird gesondert zugestellt und ist im Kundenportal abrufbar.
        </p>
    </section>

    <section class="space-y-3">
        <h2 class="text-md font-bold tracking-[-0.01em] text-ink">4. Preise, Umsatzsteuer und Zahlung</h2>
        <p class="text-md leading-relaxed text-body">
            Die im Kundenportal angezeigten Preise für Verbraucher sind Bruttopreise und enthalten
            {{ $vat }} % Umsatzsteuer. Unternehmerischen Kunden werden die Preise zusätzlich netto ausgewiesen;
            bei einer gültigen UID aus einem anderen EU-Mitgliedstaat wird die Umsatzsteuer nach dem
            Reverse-Charge-Verfahren nicht in Rechnung gestellt.
        </p>
        <p class="text-md leading-relaxed text-body">
            Das Entgelt ist monatlich im Voraus fällig und wird über den Zahlungsdienstleister Stripe
            eingezogen.
            @if ($setup > 0)
                Zusätzlich wird eine einmalige Einrichtungsgebühr von
                {{ Number::currency($setup / 100, in: 'EUR', locale: 'de') }} verrechnet; sie ist bei der
                ersten Zahlung fällig und wird bei der Bestellung ausgewiesen.
            @else
                Eine Einrichtungsgebühr wird derzeit nicht verrechnet. Fällt eine an, wird sie bei der
                Bestellung ausgewiesen und ist mit der ersten Zahlung fällig.
            @endif
        </p>
        <p class="text-md leading-relaxed text-body">
            Zusatzleistungen (etwa zusätzlicher Speicher oder eine eigene Domain) werden zum jeweils
            angezeigten Preis gebucht und ab der nächsten Abrechnungsperiode gemeinsam mit dem Paket
            verrechnet.
        </p>
    </section>

    <section class="space-y-3">
        <h2 class="text-md font-bold tracking-[-0.01em] text-ink">5. Bereitstellung</h2>
        <p class="text-md leading-relaxed text-body">
            Die Einrichtung beginnt unmittelbar nach Eingang der Zahlung und ist üblicherweise innerhalb
            weniger Minuten abgeschlossen. Der Kunde erhält seine Zugangsdaten per E-Mail, sobald die Instanz
            bereitsteht. Eine bestimmte Bereitstellungsdauer wird nicht zugesagt.
        </p>
        <p class="text-md leading-relaxed text-body">
            Steht zum Zeitpunkt der Bestellung keine freie Kapazität zur Verfügung, wird die Bestellung
            vorgemerkt und ausgeliefert, sobald Kapazität geschaffen ist; der Kunde wird darüber informiert.
            Ist die Bereitstellung binnen 14 Tagen nicht möglich, kann der Kunde vom Vertrag zurücktreten und
            erhält den gezahlten Betrag zurück.
        </p>
    </section>

    <section class="space-y-3">
        <h2 class="text-md font-bold tracking-[-0.01em] text-ink">6. Widerrufsrecht für Verbraucher</h2>
        <p class="text-md leading-relaxed text-body">
            Verbraucher können binnen 14 Tagen ab Vertragsabschluss ohne Angabe von Gründen vom Vertrag
            zurücktreten. Für die Erklärung genügt eine Mitteilung an
            <a href="mailto:{{ $company['email'] }}" class="font-medium text-accent-text underline-offset-4 hover:underline">{{ $company['email'] }}</a>;
            im Kundenportal steht dafür auch eine Schaltfläche bereit.
        </p>
        <p class="text-md leading-relaxed text-body">
            Mit der Annahme dieser AGB bei der Bestellung verlangt der Kunde ausdrücklich, dass CluPilot mit
            der Leistung schon vor Ablauf dieser Frist beginnt — anders wäre eine sofortige Bereitstellung
            nicht möglich. Das Widerrufsrecht bleibt davon unberührt: Bei einem Widerruf innerhalb der Frist
            erhält der Kunde den <strong class="font-semibold text-ink">gesamten gezahlten Betrag</strong>
            zurück. Ein Wertersatz für die Tage, an denen die Cloud bereits gelaufen ist, wird nicht verlangt,
            obwohl § 16 FAGG dies zulassen würde. Über den Widerruf wird eine Storno-Rechnung ausgestellt.
        </p>
        <p class="text-md leading-relaxed text-body">
            Unternehmerischen Kunden steht dieses Rücktrittsrecht nicht zu.
        </p>
    </section>

    <section class="space-y-3">
        <h2 class="text-md font-bold tracking-[-0.01em] text-ink">7. Laufzeit und Kündigung</h2>
        <p class="text-md leading-relaxed text-body">
            Der Vertrag läuft auf unbestimmte Zeit und kann vom Kunden jederzeit im Kundenportal zum Ende der
            laufenden Abrechnungsperiode gekündigt werden. Bis dahin bleibt die Cloud vollständig nutzbar. Zum
            Ende der Periode erhält der Kunde einen Datenexport; danach wird die Instanz abgebaut und die
            Daten werden gelöscht.
        </p>
        <p class="text-md leading-relaxed text-body">
            CluPilot kann den Vertrag mit einer Frist von drei Monaten zum Monatsende kündigen sowie aus
            wichtigem Grund mit sofortiger Wirkung, insbesondere bei Zahlungsverzug trotz Mahnung oder bei
            einem Verstoß gegen Punkt 9.
        </p>
    </section>

    <section class="space-y-3">
        <h2 class="text-md font-bold tracking-[-0.01em] text-ink">8. Kundenkonto und Löschfristen</h2>
        <p class="text-md leading-relaxed text-body">
            Ein Konto entsteht mit der Registrierung im Kundenportal und ist erst nach Bestätigung der
            E-Mail-Adresse nutzbar. CluPilot löscht Konten von selbst, damit keine unbenutzten Daten liegen
            bleiben:
        </p>
        <ul class="ml-5 list-disc space-y-2 text-md leading-relaxed text-body">
            <li>
                <strong class="font-semibold text-ink">Nicht bestätigte Registrierungen</strong> werden nach
                {{ $unverifiedDays }} Tagen gelöscht. Die E-Mail-Adresse ist danach wieder frei.
            </li>
            <li>
                <strong class="font-semibold text-ink">Bestätigte Konten ohne Paket</strong> werden nach einem
                Jahr gelöscht, wenn zu ihnen nie ein Paket, eine Buchung oder eine Rechnung bestanden hat.
                CluPilot kündigt das vorher per E-Mail an; eine Anmeldung oder eine Bestellung setzt die Frist
                zurück.
            </li>
        </ul>
        <p class="text-md leading-relaxed text-body">
            Ein Konto mit gebuchtem Paket wird nicht automatisch gelöscht. Der Kunde kann sein Konto jederzeit
            selbst schließen, sobald kein Paket mehr läuft. Rechnungen und Buchhaltungsunterlagen bewahrt
            CluPilot unabhängig davon sieben Jahre auf — dazu ist sie nach § 132 BAO verpflichtet.
        </p>
    </section>

    <section class="space-y-3">
        <h2 class="text-md font-bold tracking-[-0.01em] text-ink">9. Pflichten des Kunden</h2>
        <p class="text-md leading-relaxed text-body">
            Der Kunde bewahrt seine Zugangsdaten sorgfältig auf und ist für die Inhalte verantwortlich, die er
            und die von ihm angelegten Benutzer in der Cloud speichern. Rechtswidrige Inhalte, das Versenden
            unerbetener Massen-E-Mails und jede Nutzung, die den Betrieb der Plattform gefährdet, sind
            untersagt. CluPilot sieht Kundendaten nicht ein, außer der Kunde bittet im Rahmen einer
            Supportanfrage darum oder eine gesetzliche Verpflichtung besteht.
        </p>
    </section>

    <section class="space-y-3">
        <h2 class="text-md font-bold tracking-[-0.01em] text-ink">10. Verfügbarkeit und Wartung</h2>
        <p class="text-md leading-relaxed text-body">
            CluPilot betreibt die Plattform mit der Sorgfalt eines fachkundigen Betreibers, schuldet aber keine
            bestimmte Verfügbarkeit, solange keine gesonderte Vereinbarung darüber getroffen wurde. Geplante
            Wartungen werden im Kundenportal und per E-Mail angekündigt und nach Möglichkeit in
            verkehrsschwache Zeiten gelegt. Sicherheitsaktualisierungen können auch ohne Vorankündigung
            eingespielt werden, wenn ein Aufschub ein Risiko wäre.
        </p>
    </section>

    <section class="space-y-3">
        <h2 class="text-md font-bold tracking-[-0.01em] text-ink">11. Datenschutz</h2>
        <p class="text-md leading-relaxed text-body">
            Welche Daten CluPilot zu welchem Zweck verarbeitet, steht in der
            <a href="{{ route('legal.datenschutz') }}" class="font-medium text-accent-text underline-offset-4 hover:underline">Datenschutzerklärung</a>.
            Soweit CluPilot Daten im Auftrag des Kunden verarbeitet, gilt der Vertrag über die
            Auftragsverarbeitung nach Art. 28 DSGVO in seiner jeweils geltenden Fassung. Er wird mit
            diesen AGB Bestandteil des Vertrags; einer gesonderten Unterzeichnung bedarf es nicht.
            Der Vertrag und die Dokumentation der technischen und organisatorischen Maßnahmen stehen
            im Kundenbereich jederzeit zum Ansehen und Herunterladen bereit. Eine neue Fassung wird
            dem Kunden mitgeteilt.
        </p>
    </section>

    <section class="space-y-3">
        <h2 class="text-md font-bold tracking-[-0.01em] text-ink">12. Haftung</h2>
        <p class="text-md leading-relaxed text-body">
            CluPilot haftet nach den gesetzlichen Bestimmungen. Gegenüber unternehmerischen Kunden ist die
            Haftung für leichte Fahrlässigkeit ausgeschlossen; die Haftung für Personenschäden sowie für Vorsatz
            und grobe Fahrlässigkeit bleibt in jedem Fall unberührt. Gegenüber Verbrauchern wird die Haftung
            nicht eingeschränkt.
        </p>
    </section>

    <section class="space-y-3">
        <h2 class="text-md font-bold tracking-[-0.01em] text-ink">13. Änderungen dieser AGB</h2>
        <p class="text-md leading-relaxed text-body">
            CluPilot kann diese AGB ändern und teilt Änderungen mindestens sechs Wochen vor ihrem Wirksamwerden
            per E-Mail mit. Widerspricht der Kunde nicht bis zum Wirksamwerden, gelten die Änderungen als
            angenommen; darauf wird in der Mitteilung ausdrücklich hingewiesen. Widerspricht er, kann jede
            Seite den Vertrag zum Zeitpunkt des Wirksamwerdens kündigen.
        </p>
    </section>

    <section class="space-y-3">
        <h2 class="text-md font-bold tracking-[-0.01em] text-ink">14. Schlussbestimmungen</h2>
        <p class="text-md leading-relaxed text-body">
            Es gilt österreichisches Recht. Gegenüber Verbrauchern bleiben zwingende Schutzvorschriften ihres
            Aufenthaltsstaats unberührt, und es gilt der gesetzliche Gerichtsstand. Gegenüber unternehmerischen
            Kunden ist das für {{ $company['city'] }} sachlich zuständige Gericht zuständig. Sollte eine
            Bestimmung unwirksam sein, bleibt der Vertrag im Übrigen gültig.
        </p>
        <p class="text-md leading-relaxed text-body">
            Fragen dazu jederzeit an
            <a href="mailto:{{ $company['email'] }}" class="font-medium text-accent-text underline-offset-4 hover:underline">{{ $company['email'] }}</a>.
        </p>
    </section>

    <x-ui.button href="{{ route('home') }}" variant="secondary">
        <x-ui.icon name="arrow-left" class="size-4" />
        Zurück zur Startseite
    </x-ui.button>
</div>
