161 lines
6.0 KiB
PHP
161 lines
6.0 KiB
PHP
@extends('layouts.app')
|
|
|
|
@section('content')
|
|
|
|
<style>
|
|
@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700&display=swap');
|
|
|
|
:root {
|
|
--primary: #4F46E5;
|
|
--primary-dark: #3730A3;
|
|
--primary-light:#EEF2FF;
|
|
--danger: #DC2626;
|
|
--neutral-light:#F9FAFB;
|
|
--bg: #F3F4F8;
|
|
--surface: #FFFFFF;
|
|
--border: #E5E7EB;
|
|
--text-dark: #111827;
|
|
--text-mid: #374151;
|
|
--text-soft: #6B7280;
|
|
--radius-md: 10px;
|
|
--radius-lg: 14px;
|
|
}
|
|
|
|
* { font-family: 'Plus Jakarta Sans', sans-serif; box-sizing: border-box; }
|
|
|
|
.sw-page {
|
|
min-height: 100vh; background: var(--bg);
|
|
display: flex; align-items: center; justify-content: center;
|
|
padding: 32px 16px;
|
|
}
|
|
|
|
.sw-card {
|
|
width: 100%; max-width: 440px;
|
|
background: var(--surface);
|
|
border-radius: var(--radius-lg);
|
|
border: 1px solid var(--border);
|
|
box-shadow: 0 4px 24px rgba(0,0,0,.07);
|
|
overflow: hidden;
|
|
}
|
|
|
|
.sw-card-header {
|
|
padding: 28px 32px 24px;
|
|
background: linear-gradient(135deg, #F5F3FF 0%, #EEF2FF 100%);
|
|
border-bottom: 1px solid #DDD6FE;
|
|
text-align: center;
|
|
}
|
|
.sw-card-header-icon {
|
|
width: 52px; height: 52px;
|
|
background: var(--primary);
|
|
border-radius: 14px;
|
|
display: flex; align-items: center; justify-content: center;
|
|
color: #fff; margin: 0 auto 16px;
|
|
box-shadow: 0 4px 14px rgba(79,70,229,.3);
|
|
}
|
|
.sw-card-header h4 {
|
|
font-size: 18px; font-weight: 700;
|
|
color: #3730A3; margin: 0 0 4px;
|
|
letter-spacing: -.3px;
|
|
}
|
|
.sw-card-header p {
|
|
font-size: 12.5px; color: #6D6AA4; margin: 0;
|
|
}
|
|
|
|
.sw-card-body { padding: 28px 32px; }
|
|
|
|
.sw-info-banner {
|
|
display: flex; align-items: flex-start; gap: 10px;
|
|
background: var(--primary-light);
|
|
border: 1px solid #C7D2FE;
|
|
border-radius: var(--radius-md);
|
|
padding: 12px 14px;
|
|
font-size: 12.5px; color: #3730A3;
|
|
margin-bottom: 24px; line-height: 1.6;
|
|
}
|
|
.sw-info-banner svg { flex-shrink: 0; margin-top: 1px; }
|
|
|
|
.sw-form-group { display: flex; flex-direction: column; gap: 6px; margin-bottom: 16px; }
|
|
.sw-label { font-size: 12.5px; font-weight: 600; color: var(--text-mid); }
|
|
.sw-label span { color: var(--danger); margin-left: 2px; }
|
|
|
|
.sw-input-wrap { position: relative; }
|
|
.sw-input-wrap svg {
|
|
position: absolute; left: 14px; top: 50%;
|
|
transform: translateY(-50%); color: #9CA3AF; pointer-events: none;
|
|
}
|
|
.sw-input {
|
|
width: 100%;
|
|
padding: 11px 14px 11px 42px;
|
|
border: 1.5px solid var(--border);
|
|
border-radius: var(--radius-md);
|
|
font-size: 14px; font-family: 'Plus Jakarta Sans', sans-serif;
|
|
color: var(--text-dark); background: var(--neutral-light);
|
|
outline: none; transition: all .15s;
|
|
}
|
|
.sw-input:focus {
|
|
border-color: var(--primary);
|
|
background: #fff;
|
|
box-shadow: 0 0 0 3px rgba(79,70,229,.1);
|
|
}
|
|
.sw-input::placeholder { color: #C3C7D0; }
|
|
|
|
.sw-btn-submit {
|
|
width: 100%; padding: 13px; border-radius: var(--radius-md); border: none;
|
|
background: var(--primary); color: #fff;
|
|
font-size: 14px; font-weight: 700;
|
|
font-family: 'Plus Jakarta Sans', sans-serif;
|
|
cursor: pointer; transition: all .18s; margin-top: 8px;
|
|
box-shadow: 0 4px 14px rgba(79,70,229,.3);
|
|
display: flex; align-items: center; justify-content: center; gap: 8px;
|
|
}
|
|
.sw-btn-submit:hover { background: var(--primary-dark); transform: translateY(-1px); box-shadow: 0 6px 20px rgba(79,70,229,.35); }
|
|
</style>
|
|
|
|
<div class="sw-page">
|
|
<div class="sw-card">
|
|
|
|
<div class="sw-card-header">
|
|
<div class="sw-card-header-icon">
|
|
<svg width="22" height="22" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.2"><rect x="3" y="11" width="18" height="11" rx="2" ry="2"/><path d="M7 11V7a5 5 0 0 1 10 0v4"/></svg>
|
|
</div>
|
|
<h4>Ganti Password</h4>
|
|
<p>Buat password baru yang kuat untuk akun Anda</p>
|
|
</div>
|
|
|
|
<div class="sw-card-body">
|
|
|
|
<div class="sw-info-banner">
|
|
<svg width="15" height="15" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.2"><circle cx="12" cy="12" r="10"/><line x1="12" y1="16" x2="12" y2="12"/><line x1="12" y1="8" x2="12.01" y2="8"/></svg>
|
|
Anda diwajibkan mengganti password sebelum dapat menggunakan sistem. Gunakan minimal 8 karakter.
|
|
</div>
|
|
|
|
<form method="POST" action="{{ route('force.password.update') }}">
|
|
@csrf
|
|
|
|
<div class="sw-form-group">
|
|
<label class="sw-label">Password Baru <span>*</span></label>
|
|
<div class="sw-input-wrap">
|
|
<svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><rect x="3" y="11" width="18" height="11" rx="2" ry="2"/><path d="M7 11V7a5 5 0 0 1 10 0v4"/></svg>
|
|
<input type="password" name="password" class="sw-input" placeholder="Minimal 8 karakter" required>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="sw-form-group">
|
|
<label class="sw-label">Konfirmasi Password <span>*</span></label>
|
|
<div class="sw-input-wrap">
|
|
<svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><polyline points="9 11 12 14 22 4"/><path d="M21 12v7a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h11"/></svg>
|
|
<input type="password" name="password_confirmation" class="sw-input" placeholder="Ulangi password" required>
|
|
</div>
|
|
</div>
|
|
|
|
<button type="submit" class="sw-btn-submit">
|
|
<svg width="15" height="15" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.3"><path d="M19 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h11l5 5v11a2 2 0 0 1-2 2z"/><polyline points="17 21 17 13 7 13 7 21"/><polyline points="7 3 7 8 15 8"/></svg>
|
|
Simpan Password
|
|
</button>
|
|
|
|
</form>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
@endsection |