-
@if(!is_null($priceValue) && $priceValue > 0)
{{ number_format($priceValue, 0, ',', '.') }} {{ $listing->currency }}
@else
diff --git a/public/theme.css b/public/theme.css
deleted file mode 100644
index 6c71c8437..000000000
--- a/public/theme.css
+++ /dev/null
@@ -1,781 +0,0 @@
-:root {
- --oc-bg: #f5f5f7;
- --oc-surface: #ffffff;
- --oc-border: #d2d2d7;
- --oc-text: #1d1d1f;
- --oc-muted: #6e6e73;
- --oc-primary: #0071e3;
- --oc-primary-strong: #0066cc;
- --oc-primary-soft: #e8f3ff;
- --oc-primary-soft-border: #bfdcff;
- --oc-chip: #f5f5f7;
-}
-
-html,
-body {
- min-height: 100%;
-}
-
-body {
- font-family: -apple-system, BlinkMacSystemFont, "SF Pro Text", "SF Pro Display", "Helvetica Neue", Helvetica, Arial, sans-serif;
- background: radial-gradient(circle at top right, #eef5ff 0%, var(--oc-bg) 30%);
- color: var(--oc-text);
-}
-
-h1,
-h2,
-h3,
-h4,
-h5,
-h6 {
- letter-spacing: -0.01em;
-}
-
-.brand-logo {
- position: relative;
- width: 1.45rem;
- height: 1.7rem;
- display: inline-block;
- border-radius: 60% 60% 55% 55% / 62% 62% 70% 70%;
- background: var(--oc-text);
- box-shadow: 0 5px 14px rgba(29, 29, 31, 0.18);
- transform: translateY(1px);
-}
-
-.brand-logo::before {
- content: "";
- position: absolute;
- top: -0.42rem;
- right: 0.14rem;
- width: 0.54rem;
- height: 0.31rem;
- border-radius: 100% 0;
- background: var(--oc-text);
- transform: rotate(-32deg);
-}
-
-.brand-logo::after {
- content: "";
- position: absolute;
- top: 0.18rem;
- left: 50%;
- transform: translateX(-50%);
- width: 0.16rem;
- height: 0.2rem;
- border-radius: 999px;
- background: var(--oc-surface);
-}
-
-.brand-text {
- font-size: 1.7rem;
- font-weight: 600;
- color: var(--oc-text);
- letter-spacing: -0.03em;
-}
-
-.market-nav-surface {
- background: rgba(251, 251, 253, 0.88);
- backdrop-filter: saturate(180%) blur(18px);
- border-bottom: 1px solid var(--oc-border);
-}
-
-.search-shell {
- border: 1px solid var(--oc-border);
- background: #ffffff;
- border-radius: 999px;
-}
-
-.chip-btn {
- border: 1px solid var(--oc-border);
- background: var(--oc-chip);
- border-radius: 999px;
-}
-
-.btn-primary {
- background: linear-gradient(180deg, #0a84ff, var(--oc-primary));
- color: #ffffff;
- border-radius: 999px;
- box-shadow: 0 6px 16px rgba(0, 113, 227, 0.24);
- transition: background 0.2s ease, box-shadow 0.2s ease;
-}
-
-.btn-primary:hover {
- background: linear-gradient(180deg, var(--oc-primary), var(--oc-primary-strong));
- box-shadow: 0 8px 18px rgba(0, 113, 227, 0.3);
-}
-
-.header-utility {
- width: 2.75rem;
- height: 2.75rem;
- border-radius: 999px;
- border: 1px solid var(--oc-border);
- background: #ffffff;
- display: inline-flex;
- align-items: center;
- justify-content: center;
- color: #4b5563;
- transition: all 0.2s ease;
-}
-
-.header-utility:hover {
- border-color: var(--oc-primary-soft-border);
- color: var(--oc-primary);
-}
-
-.location-panel {
- width: min(90vw, 360px);
-}
-
-.location-panel select {
- border: 1px solid var(--oc-border);
- border-radius: 0.75rem;
- background: #f7f7f8;
- color: #374151;
- padding: 0.55rem 0.75rem;
- font-size: 0.875rem;
-}
-
-summary::-webkit-details-marker {
- display: none;
-}
-
-[dir="rtl"] {
- text-align: right;
-}
-
-.listing-filter-card {
- border: 1px solid var(--oc-border);
- border-radius: 14px;
- background: var(--oc-surface);
-}
-
-.listing-card {
- border: 1px solid var(--oc-border);
- border-radius: 12px;
- overflow: hidden;
- background: var(--oc-surface);
- transition: box-shadow 0.2s ease, transform 0.2s ease;
-}
-
-.listing-card:hover {
- box-shadow: 0 14px 28px rgba(29, 29, 31, 0.12);
- transform: translateY(-2px);
-}
-
-.listing-title {
- display: -webkit-box;
- -webkit-box-orient: vertical;
- -webkit-line-clamp: 2;
- overflow: hidden;
-}
-
-.lt-wrap {
- max-width: 1320px;
- margin: 0 auto;
- padding: 24px 16px 46px;
-}
-
-.lt-breadcrumb {
- display: flex;
- flex-wrap: wrap;
- gap: 8px;
- font-size: 13px;
- color: var(--oc-muted);
- margin-bottom: 14px;
-}
-
-.lt-breadcrumb a {
- color: #4b5563;
- text-decoration: none;
-}
-
-.lt-breadcrumb span:last-child {
- color: var(--oc-text);
- font-weight: 700;
-}
-
-.lt-grid {
- display: grid;
- grid-template-columns: minmax(0, 1fr) 352px;
- gap: 18px;
- align-items: start;
-}
-
-.lt-card {
- border: 1px solid var(--oc-border);
- border-radius: 14px;
- background: #f7f7f8;
- box-shadow: 0 1px 2px rgba(16, 24, 40, 0.05);
-}
-
-.lt-gallery-main {
- position: relative;
- border-radius: 10px;
- background: #1f2937;
- overflow: hidden;
- min-height: 440px;
-}
-
-.lt-gallery-main img {
- width: 100%;
- height: 100%;
- object-fit: cover;
- min-height: 440px;
-}
-
-.lt-gallery-main-empty {
- min-height: 440px;
- display: grid;
- place-items: center;
- color: #cbd5e1;
- font-size: 14px;
-}
-
-.lt-gallery-nav {
- position: absolute;
- top: 50%;
- transform: translateY(-50%);
- width: 44px;
- height: 44px;
- border: 0;
- border-radius: 999px;
- background: rgba(255, 255, 255, 0.92);
- color: #111827;
- display: grid;
- place-items: center;
- cursor: pointer;
-}
-
-.lt-gallery-nav[data-gallery-prev] {
- left: 14px;
-}
-
-.lt-gallery-nav[data-gallery-next] {
- right: 14px;
-}
-
-.lt-gallery-top {
- position: absolute;
- top: 12px;
- left: 12px;
- right: 12px;
- display: flex;
- justify-content: space-between;
- align-items: center;
-}
-
-.lt-badge {
- border-radius: 999px;
- background: #ffd60a;
- color: #111827;
- font-size: 12px;
- font-weight: 700;
- padding: 6px 10px;
-}
-
-.lt-icon-btn {
- width: 38px;
- height: 38px;
- border: 0;
- border-radius: 999px;
- background: rgba(17, 24, 39, 0.86);
- color: #ffffff;
- display: inline-flex;
- align-items: center;
- justify-content: center;
-}
-
-.lt-thumbs {
- display: flex;
- gap: 10px;
- overflow-x: auto;
- padding: 12px 0 2px;
-}
-
-.lt-thumb {
- width: 86px;
- min-width: 86px;
- height: 64px;
- border: 2px solid transparent;
- border-radius: 10px;
- overflow: hidden;
- background: #d1d5db;
- cursor: pointer;
-}
-
-.lt-thumb.is-active {
- border-color: var(--oc-primary);
-}
-
-.lt-thumb img {
- width: 100%;
- height: 100%;
- object-fit: cover;
-}
-
-.lt-media-card {
- padding: 14px;
-}
-
-.lt-detail-card {
- margin-top: 14px;
- padding: 18px 20px;
-}
-
-.lt-price-row {
- display: flex;
- flex-wrap: wrap;
- gap: 12px;
- justify-content: space-between;
- align-items: flex-start;
-}
-
-.lt-price {
- font-size: 46px;
- line-height: 1;
- font-weight: 900;
- color: #0f172a;
-}
-
-.lt-title {
- margin-top: 8px;
- font-size: 21px;
- font-weight: 700;
- color: #111827;
-}
-
-.lt-meta {
- text-align: right;
- color: #4b5563;
- font-size: 14px;
-}
-
-.lt-meta strong {
- color: #111827;
- font-weight: 700;
-}
-
-.lt-credit {
- margin-top: 14px;
- border: 1px solid #e3e7ee;
- border-radius: 12px;
- padding: 14px;
- background: #fafafb;
- display: flex;
- align-items: center;
- justify-content: space-between;
- gap: 12px;
-}
-
-.lt-credit h4 {
- margin: 0;
- font-size: 20px;
- color: #0f172a;
-}
-
-.lt-credit p {
- margin: 3px 0 0;
- font-size: 14px;
- color: #4b5563;
-}
-
-.lt-tag {
- border-radius: 999px;
- background: var(--oc-primary);
- color: #ffffff;
- font-size: 13px;
- font-weight: 700;
- padding: 7px 12px;
-}
-
-.lt-section-title {
- margin: 18px 0 10px;
- font-size: 30px;
- font-weight: 900;
- color: #111827;
-}
-
-.lt-features {
- border-top: 1px solid #e2e8f0;
- margin-top: 12px;
-}
-
-.lt-feature-row {
- display: grid;
- grid-template-columns: 1fr 1fr;
- gap: 14px;
- border-top: 1px solid #e7ebf2;
- padding: 12px 0;
-}
-
-.lt-feature-row:first-child {
- border-top: 0;
-}
-
-.lt-f-item {
- display: flex;
- justify-content: space-between;
- gap: 8px;
- color: #334155;
- font-size: 15px;
-}
-
-.lt-f-item strong {
- color: #111827;
- font-weight: 800;
- text-align: right;
-}
-
-.lt-side-card {
- position: sticky;
- top: 96px;
- padding: 16px;
-}
-
-.lt-seller-head {
- display: flex;
- align-items: center;
- gap: 10px;
-}
-
-.lt-avatar {
- width: 44px;
- height: 44px;
- border-radius: 999px;
- background: #f3f4f6;
- color: #111827;
- display: grid;
- place-items: center;
- font-weight: 800;
-}
-
-.lt-seller-name {
- margin: 0;
- font-size: 31px;
- font-weight: 800;
- color: #111827;
- line-height: 1.1;
-}
-
-.lt-seller-meta {
- margin-top: 2px;
- font-size: 13px;
- color: #6b7280;
-}
-
-.lt-actions {
- margin-top: 14px;
- display: grid;
- gap: 10px;
-}
-
-.lt-row-2 {
- display: grid;
- grid-template-columns: 1fr 1fr;
- gap: 10px;
-}
-
-.lt-btn {
- height: 46px;
- border-radius: 999px;
- border: 1px solid var(--oc-primary-soft-border);
- background: var(--oc-primary-soft);
- color: var(--oc-primary);
- font-size: 20px;
- font-weight: 800;
- text-decoration: none;
- display: inline-flex;
- align-items: center;
- justify-content: center;
- gap: 6px;
- cursor: pointer;
-}
-
-.lt-btn:disabled {
- opacity: 0.45;
- cursor: not-allowed;
-}
-
-.lt-btn-main {
- border: 0;
- background: var(--oc-primary);
- color: #ffffff;
- width: 100%;
-}
-
-.lt-btn-soft {
- border-color: #d9e9ff;
- background: #eef5ff;
-}
-
-.lt-btn-outline {
- border-color: var(--oc-border);
- background: #ffffff;
- color: #334155;
-}
-
-.lt-report {
- margin-top: 16px;
- height: 54px;
- border: 1px solid #dce9fa;
- border-radius: 999px;
- background: #f7fbff;
- color: var(--oc-primary);
- font-size: 16px;
- font-weight: 700;
- display: grid;
- place-items: center;
- text-decoration: none;
-}
-
-.lt-policy {
- margin-top: 16px;
- text-align: center;
- color: #6b7280;
- font-size: 13px;
-}
-
-.lt-related {
- margin-top: 26px;
-}
-
-.lt-related-head {
- display: flex;
- justify-content: space-between;
- align-items: center;
-}
-
-.lt-related-title {
- font-size: 30px;
- font-weight: 900;
- margin: 0;
-}
-
-.lt-scroll-wrap {
- position: relative;
- margin-top: 14px;
-}
-
-.lt-scroll-track {
- display: flex;
- gap: 12px;
- overflow-x: auto;
- scroll-behavior: smooth;
- padding: 2px 2px 8px;
-}
-
-.lt-rel-card {
- min-width: 232px;
- width: 232px;
- border: 1px solid var(--oc-border);
- border-radius: 10px;
- background: #f7f7f8;
- overflow: hidden;
- text-decoration: none;
- color: inherit;
-}
-
-.lt-rel-photo {
- height: 168px;
- background: #d1d5db;
-}
-
-.lt-rel-photo img {
- width: 100%;
- height: 100%;
- object-fit: cover;
-}
-
-.lt-rel-body {
- padding: 10px;
-}
-
-.lt-rel-price {
- font-size: 32px;
- font-weight: 900;
- color: #111827;
- line-height: 1.1;
-}
-
-.lt-rel-title {
- margin-top: 4px;
- font-size: 20px;
- font-weight: 700;
- color: #111827;
- line-height: 1.3;
- min-height: 52px;
-}
-
-.lt-rel-city {
- margin-top: 6px;
- font-size: 13px;
- color: #6b7280;
-}
-
-.lt-scroll-btn {
- position: absolute;
- top: 42%;
- transform: translateY(-50%);
- width: 44px;
- height: 44px;
- border: 0;
- border-radius: 999px;
- background: rgba(255, 255, 255, 0.92);
- box-shadow: 0 1px 4px rgba(15, 23, 42, 0.18);
- display: grid;
- place-items: center;
- cursor: pointer;
-}
-
-.lt-scroll-btn.prev {
- left: -16px;
-}
-
-.lt-scroll-btn.next {
- right: -16px;
-}
-
-.lt-pill-wrap {
- margin-top: 20px;
-}
-
-.lt-pill-title {
- margin: 0 0 10px;
- font-size: 30px;
- font-weight: 900;
-}
-
-.lt-pills {
- display: flex;
- flex-wrap: wrap;
- gap: 10px;
-}
-
-.lt-pill {
- border: 1px solid var(--oc-border);
- background: #f4f5f7;
- border-radius: 999px;
- padding: 8px 14px;
- color: #374151;
- text-decoration: none;
- font-size: 14px;
- font-weight: 600;
-}
-
-.text-rose-500,
-.text-rose-600,
-.text-rose-700 {
- color: var(--oc-primary) !important;
-}
-
-.bg-rose-50 {
- background-color: var(--oc-primary-soft) !important;
-}
-
-.bg-rose-100 {
- background-color: #dcecff !important;
-}
-
-.bg-rose-500 {
- background-color: var(--oc-primary) !important;
-}
-
-.bg-rose-600 {
- background-color: var(--oc-primary-strong) !important;
-}
-
-.border-rose-200,
-.border-rose-300 {
- border-color: var(--oc-primary-soft-border) !important;
-}
-
-.hover\:text-rose-500:hover,
-.hover\:text-rose-600:hover,
-.hover\:text-rose-700:hover {
- color: var(--oc-primary) !important;
-}
-
-.hover\:bg-rose-50:hover {
- background-color: var(--oc-primary-soft) !important;
-}
-
-.hover\:bg-rose-100:hover {
- background-color: #dcecff !important;
-}
-
-.hover\:bg-rose-600:hover {
- background-color: var(--oc-primary-strong) !important;
-}
-
-.focus\:ring-rose-200:focus {
- --tw-ring-color: rgba(0, 113, 227, 0.24) !important;
-}
-
-.accent-rose-500 {
- accent-color: var(--oc-primary) !important;
-}
-
-@media (max-width: 1080px) {
- .lt-grid {
- grid-template-columns: 1fr;
- }
-
- .lt-side-card {
- position: static;
- }
-
- .lt-scroll-btn {
- display: none;
- }
-
- .lt-price {
- font-size: 39px;
- }
-
- .lt-seller-name,
- .lt-section-title,
- .lt-related-title,
- .lt-pill-title {
- font-size: 24px;
- }
-}
-
-@media (max-width: 640px) {
- .lt-wrap {
- padding: 16px 10px 30px;
- }
-
- .lt-detail-card,
- .lt-media-card,
- .lt-side-card {
- padding: 12px;
- }
-
- .lt-gallery-main,
- .lt-gallery-main img,
- .lt-gallery-main-empty {
- min-height: 260px;
- }
-
- .lt-feature-row {
- grid-template-columns: 1fr;
- gap: 10px;
- }
-
- .lt-price-row {
- flex-direction: column;
- }
-
- .lt-meta {
- text-align: left;
- }
-
- .lt-rel-card {
- min-width: 196px;
- width: 196px;
- }
-
- .lt-rel-photo {
- height: 140px;
- }
-}
diff --git a/resources/css/app.css b/resources/css/app.css
index b5c61c956..9018d2eb2 100644
--- a/resources/css/app.css
+++ b/resources/css/app.css
@@ -1,3 +1,1206 @@
@tailwind base;
@tailwind components;
@tailwind utilities;
+
+:root {
+ --oc-font-sans: -apple-system, BlinkMacSystemFont, "SF Pro Text", "SF Pro Display", "Helvetica Neue", Helvetica, Arial, sans-serif;
+ --oc-bg: #f5f5f7;
+ --oc-surface: #ffffff;
+ --oc-border: #d2d2d7;
+ --oc-text: #1d1d1f;
+ --oc-muted: #6e6e73;
+ --oc-primary: #0071e3;
+ --oc-primary-strong: #0066cc;
+ --oc-primary-soft: #e8f3ff;
+ --oc-primary-soft-border: #bfdcff;
+ --oc-chip: #f5f5f7;
+}
+
+html,
+body {
+ min-height: 100%;
+}
+
+body {
+ font-family: var(--oc-font-sans);
+ background: radial-gradient(circle at top right, #eef5ff 0%, var(--oc-bg) 30%);
+ color: var(--oc-text);
+}
+
+h1,
+h2,
+h3,
+h4,
+h5,
+h6 {
+ letter-spacing: -0.01em;
+}
+
+.brand-logo {
+ position: relative;
+ width: 1.45rem;
+ height: 1.7rem;
+ display: inline-block;
+ border-radius: 60% 60% 55% 55% / 62% 62% 70% 70%;
+ background: var(--oc-text);
+ box-shadow: 0 5px 14px rgba(29, 29, 31, 0.18);
+ transform: translateY(1px);
+}
+
+.brand-logo::before {
+ content: "";
+ position: absolute;
+ top: -0.42rem;
+ right: 0.14rem;
+ width: 0.54rem;
+ height: 0.31rem;
+ border-radius: 100% 0;
+ background: var(--oc-text);
+ transform: rotate(-32deg);
+}
+
+.brand-logo::after {
+ content: "";
+ position: absolute;
+ top: 0.18rem;
+ left: 50%;
+ transform: translateX(-50%);
+ width: 0.16rem;
+ height: 0.2rem;
+ border-radius: 999px;
+ background: var(--oc-surface);
+}
+
+.brand-text {
+ font-size: 1.7rem;
+ font-weight: 600;
+ color: var(--oc-text);
+ letter-spacing: -0.03em;
+}
+
+.market-nav-surface {
+ background: rgba(251, 251, 253, 0.88);
+ backdrop-filter: saturate(180%) blur(18px);
+ border-bottom: 1px solid var(--oc-border);
+}
+
+.search-shell {
+ border: 1px solid var(--oc-border);
+ background: #ffffff;
+ border-radius: 999px;
+}
+
+.chip-btn {
+ border: 1px solid var(--oc-border);
+ background: var(--oc-chip);
+ border-radius: 999px;
+}
+
+.btn-primary {
+ background: linear-gradient(180deg, #0a84ff, var(--oc-primary));
+ color: #ffffff;
+ border-radius: 999px;
+ box-shadow: 0 6px 16px rgba(0, 113, 227, 0.24);
+ transition: background 0.2s ease, box-shadow 0.2s ease;
+}
+
+.btn-primary:hover {
+ background: linear-gradient(180deg, var(--oc-primary), var(--oc-primary-strong));
+ box-shadow: 0 8px 18px rgba(0, 113, 227, 0.3);
+}
+
+.header-utility {
+ width: 2.75rem;
+ height: 2.75rem;
+ border-radius: 999px;
+ border: 1px solid var(--oc-border);
+ background: #ffffff;
+ display: inline-flex;
+ align-items: center;
+ justify-content: center;
+ color: #4b5563;
+ transition: all 0.2s ease;
+}
+
+.header-utility:hover {
+ border-color: var(--oc-primary-soft-border);
+ color: var(--oc-primary);
+}
+
+.location-panel {
+ width: min(90vw, 360px);
+}
+
+.location-panel select {
+ border: 1px solid var(--oc-border);
+ border-radius: 0.75rem;
+ background: #f7f7f8;
+ color: #374151;
+ padding: 0.55rem 0.75rem;
+ font-size: 0.875rem;
+}
+
+summary::-webkit-details-marker {
+ display: none;
+}
+
+[dir="rtl"] {
+ text-align: right;
+}
+
+.listing-filter-card {
+ border: 1px solid var(--oc-border);
+ border-radius: 14px;
+ background: var(--oc-surface);
+}
+
+.listing-card {
+ border: 1px solid var(--oc-border);
+ border-radius: 12px;
+ overflow: hidden;
+ background: var(--oc-surface);
+ transition: box-shadow 0.2s ease, transform 0.2s ease;
+}
+
+.listing-card:hover {
+ box-shadow: 0 14px 28px rgba(29, 29, 31, 0.12);
+ transform: translateY(-2px);
+}
+
+.listing-title {
+ display: -webkit-box;
+ -webkit-box-orient: vertical;
+ -webkit-line-clamp: 2;
+ overflow: hidden;
+}
+
+.lt-wrap {
+ max-width: 1320px;
+ margin: 0 auto;
+ padding: 24px 16px 46px;
+}
+
+.lt-breadcrumb {
+ display: flex;
+ flex-wrap: wrap;
+ gap: 8px;
+ font-size: 13px;
+ color: var(--oc-muted);
+ margin-bottom: 14px;
+}
+
+.lt-breadcrumb a {
+ color: #4b5563;
+ text-decoration: none;
+}
+
+.lt-breadcrumb span:last-child {
+ color: var(--oc-text);
+ font-weight: 700;
+}
+
+.lt-grid {
+ display: grid;
+ grid-template-columns: minmax(0, 1fr) 352px;
+ gap: 18px;
+ align-items: start;
+}
+
+.lt-card {
+ border: 1px solid var(--oc-border);
+ border-radius: 14px;
+ background: #f7f7f8;
+ box-shadow: 0 1px 2px rgba(16, 24, 40, 0.05);
+}
+
+.lt-gallery-main {
+ position: relative;
+ border-radius: 10px;
+ background: #1f2937;
+ overflow: hidden;
+ min-height: 440px;
+}
+
+.lt-gallery-main img {
+ width: 100%;
+ height: 100%;
+ object-fit: cover;
+ min-height: 440px;
+}
+
+.lt-gallery-main-empty {
+ min-height: 440px;
+ display: grid;
+ place-items: center;
+ color: #cbd5e1;
+ font-size: 14px;
+}
+
+.lt-gallery-nav {
+ position: absolute;
+ top: 50%;
+ transform: translateY(-50%);
+ width: 44px;
+ height: 44px;
+ border: 0;
+ border-radius: 999px;
+ background: rgba(255, 255, 255, 0.92);
+ color: #111827;
+ display: grid;
+ place-items: center;
+ cursor: pointer;
+}
+
+.lt-gallery-nav[data-gallery-prev] {
+ left: 14px;
+}
+
+.lt-gallery-nav[data-gallery-next] {
+ right: 14px;
+}
+
+.lt-gallery-top {
+ position: absolute;
+ top: 12px;
+ left: 12px;
+ right: 12px;
+ display: flex;
+ justify-content: space-between;
+ align-items: center;
+}
+
+.lt-badge {
+ border-radius: 999px;
+ background: #ffd60a;
+ color: #111827;
+ font-size: 12px;
+ font-weight: 700;
+ padding: 6px 10px;
+}
+
+.lt-icon-btn {
+ width: 38px;
+ height: 38px;
+ border: 0;
+ border-radius: 999px;
+ background: rgba(17, 24, 39, 0.86);
+ color: #ffffff;
+ display: inline-flex;
+ align-items: center;
+ justify-content: center;
+}
+
+.lt-thumbs {
+ display: flex;
+ gap: 10px;
+ overflow-x: auto;
+ padding: 12px 0 2px;
+}
+
+.lt-thumb {
+ width: 86px;
+ min-width: 86px;
+ height: 64px;
+ border: 2px solid transparent;
+ border-radius: 10px;
+ overflow: hidden;
+ background: #d1d5db;
+ cursor: pointer;
+}
+
+.lt-thumb.is-active {
+ border-color: var(--oc-primary);
+}
+
+.lt-thumb img {
+ width: 100%;
+ height: 100%;
+ object-fit: cover;
+}
+
+.lt-media-card {
+ padding: 14px;
+}
+
+.lt-detail-card {
+ margin-top: 14px;
+ padding: 18px 20px;
+}
+
+.lt-price-row {
+ display: flex;
+ flex-wrap: wrap;
+ gap: 12px;
+ justify-content: space-between;
+ align-items: flex-start;
+}
+
+.lt-price {
+ font-size: 46px;
+ line-height: 1;
+ font-weight: 900;
+ color: #0f172a;
+}
+
+.lt-title {
+ margin-top: 8px;
+ font-size: 21px;
+ font-weight: 700;
+ color: #111827;
+}
+
+.lt-meta {
+ text-align: right;
+ color: #4b5563;
+ font-size: 14px;
+}
+
+.lt-meta strong {
+ color: #111827;
+ font-weight: 700;
+}
+
+.lt-credit {
+ margin-top: 14px;
+ border: 1px solid #e3e7ee;
+ border-radius: 12px;
+ padding: 14px;
+ background: #fafafb;
+ display: flex;
+ align-items: center;
+ justify-content: space-between;
+ gap: 12px;
+}
+
+.lt-credit h4 {
+ margin: 0;
+ font-size: 20px;
+ color: #0f172a;
+}
+
+.lt-credit p {
+ margin: 3px 0 0;
+ font-size: 14px;
+ color: #4b5563;
+}
+
+.lt-tag {
+ border-radius: 999px;
+ background: var(--oc-primary);
+ color: #ffffff;
+ font-size: 13px;
+ font-weight: 700;
+ padding: 7px 12px;
+}
+
+.lt-section-title {
+ margin: 18px 0 10px;
+ font-size: 30px;
+ font-weight: 900;
+ color: #111827;
+}
+
+.lt-features {
+ border-top: 1px solid #e2e8f0;
+ margin-top: 12px;
+}
+
+.lt-feature-row {
+ display: grid;
+ grid-template-columns: 1fr 1fr;
+ gap: 14px;
+ border-top: 1px solid #e7ebf2;
+ padding: 12px 0;
+}
+
+.lt-feature-row:first-child {
+ border-top: 0;
+}
+
+.lt-f-item {
+ display: flex;
+ justify-content: space-between;
+ gap: 8px;
+ color: #334155;
+ font-size: 15px;
+}
+
+.lt-f-item strong {
+ color: #111827;
+ font-weight: 800;
+ text-align: right;
+}
+
+.lt-side-card {
+ position: sticky;
+ top: 96px;
+ padding: 16px;
+}
+
+.lt-seller-head {
+ display: flex;
+ align-items: center;
+ gap: 10px;
+}
+
+.lt-avatar {
+ width: 44px;
+ height: 44px;
+ border-radius: 999px;
+ background: #f3f4f6;
+ color: #111827;
+ display: grid;
+ place-items: center;
+ font-weight: 800;
+}
+
+.lt-seller-name {
+ margin: 0;
+ font-size: 31px;
+ font-weight: 800;
+ color: #111827;
+ line-height: 1.1;
+}
+
+.lt-seller-meta {
+ margin-top: 2px;
+ font-size: 13px;
+ color: #6b7280;
+}
+
+.lt-actions {
+ margin-top: 14px;
+ display: grid;
+ gap: 10px;
+}
+
+.lt-row-2 {
+ display: grid;
+ grid-template-columns: 1fr 1fr;
+ gap: 10px;
+}
+
+.lt-btn {
+ height: 46px;
+ border-radius: 999px;
+ border: 1px solid var(--oc-primary-soft-border);
+ background: var(--oc-primary-soft);
+ color: var(--oc-primary);
+ font-size: 20px;
+ font-weight: 800;
+ text-decoration: none;
+ display: inline-flex;
+ align-items: center;
+ justify-content: center;
+ gap: 6px;
+ cursor: pointer;
+}
+
+.lt-btn:disabled {
+ opacity: 0.45;
+ cursor: not-allowed;
+}
+
+.lt-btn-main {
+ border: 0;
+ background: var(--oc-primary);
+ color: #ffffff;
+ width: 100%;
+}
+
+.lt-btn-soft {
+ border-color: #d9e9ff;
+ background: #eef5ff;
+}
+
+.lt-btn-outline {
+ border-color: var(--oc-border);
+ background: #ffffff;
+ color: #334155;
+}
+
+.lt-report {
+ margin-top: 16px;
+ height: 54px;
+ border: 1px solid #dce9fa;
+ border-radius: 999px;
+ background: #f7fbff;
+ color: var(--oc-primary);
+ font-size: 16px;
+ font-weight: 700;
+ display: grid;
+ place-items: center;
+ text-decoration: none;
+}
+
+.lt-policy {
+ margin-top: 16px;
+ text-align: center;
+ color: #6b7280;
+ font-size: 13px;
+}
+
+.lt-related {
+ margin-top: 26px;
+}
+
+.lt-related-head {
+ display: flex;
+ justify-content: space-between;
+ align-items: center;
+}
+
+.lt-related-title {
+ font-size: 30px;
+ font-weight: 900;
+ margin: 0;
+}
+
+.lt-scroll-wrap {
+ position: relative;
+ margin-top: 14px;
+}
+
+.lt-scroll-track {
+ display: flex;
+ gap: 12px;
+ overflow-x: auto;
+ scroll-behavior: smooth;
+ padding: 2px 2px 8px;
+}
+
+.lt-rel-card {
+ min-width: 232px;
+ width: 232px;
+ border: 1px solid var(--oc-border);
+ border-radius: 10px;
+ background: #f7f7f8;
+ overflow: hidden;
+ text-decoration: none;
+ color: inherit;
+}
+
+.lt-rel-photo {
+ height: 168px;
+ background: #d1d5db;
+}
+
+.lt-rel-photo img {
+ width: 100%;
+ height: 100%;
+ object-fit: cover;
+}
+
+.lt-rel-body {
+ padding: 10px;
+}
+
+.lt-rel-price {
+ font-size: 32px;
+ font-weight: 900;
+ color: #111827;
+ line-height: 1.1;
+}
+
+.lt-rel-title {
+ margin-top: 4px;
+ font-size: 20px;
+ font-weight: 700;
+ color: #111827;
+ line-height: 1.3;
+ min-height: 52px;
+}
+
+.lt-rel-city {
+ margin-top: 6px;
+ font-size: 13px;
+ color: #6b7280;
+}
+
+.lt-scroll-btn {
+ position: absolute;
+ top: 42%;
+ transform: translateY(-50%);
+ width: 44px;
+ height: 44px;
+ border: 0;
+ border-radius: 999px;
+ background: rgba(255, 255, 255, 0.92);
+ box-shadow: 0 1px 4px rgba(15, 23, 42, 0.18);
+ display: grid;
+ place-items: center;
+ cursor: pointer;
+}
+
+.lt-scroll-btn.prev {
+ left: -16px;
+}
+
+.lt-scroll-btn.next {
+ right: -16px;
+}
+
+.lt-pill-wrap {
+ margin-top: 20px;
+}
+
+.lt-pill-title {
+ margin: 0 0 10px;
+ font-size: 30px;
+ font-weight: 900;
+}
+
+.lt-pills {
+ display: flex;
+ flex-wrap: wrap;
+ gap: 10px;
+}
+
+.lt-pill {
+ border: 1px solid var(--oc-border);
+ background: #f4f5f7;
+ border-radius: 999px;
+ padding: 8px 14px;
+ color: #374151;
+ text-decoration: none;
+ font-size: 14px;
+ font-weight: 600;
+}
+
+.text-rose-500,
+.text-rose-600,
+.text-rose-700 {
+ color: var(--oc-primary) !important;
+}
+
+.bg-rose-50 {
+ background-color: var(--oc-primary-soft) !important;
+}
+
+.bg-rose-100 {
+ background-color: #dcecff !important;
+}
+
+.bg-rose-500 {
+ background-color: var(--oc-primary) !important;
+}
+
+.bg-rose-600 {
+ background-color: var(--oc-primary-strong) !important;
+}
+
+.border-rose-200,
+.border-rose-300 {
+ border-color: var(--oc-primary-soft-border) !important;
+}
+
+.hover\:text-rose-500:hover,
+.hover\:text-rose-600:hover,
+.hover\:text-rose-700:hover {
+ color: var(--oc-primary) !important;
+}
+
+.hover\:bg-rose-50:hover {
+ background-color: var(--oc-primary-soft) !important;
+}
+
+.hover\:bg-rose-100:hover {
+ background-color: #dcecff !important;
+}
+
+.hover\:bg-rose-600:hover {
+ background-color: var(--oc-primary-strong) !important;
+}
+
+.focus\:ring-rose-200:focus {
+ --tw-ring-color: rgba(0, 113, 227, 0.24) !important;
+}
+
+.accent-rose-500 {
+ accent-color: var(--oc-primary) !important;
+}
+
+@media (max-width: 1080px) {
+ .lt-grid {
+ grid-template-columns: 1fr;
+ }
+
+ .lt-side-card {
+ position: static;
+ }
+
+ .lt-scroll-btn {
+ display: none;
+ }
+
+ .lt-price {
+ font-size: 39px;
+ }
+
+ .lt-seller-name,
+ .lt-section-title,
+ .lt-related-title,
+ .lt-pill-title {
+ font-size: 24px;
+ }
+}
+
+@media (max-width: 640px) {
+ .lt-wrap {
+ padding: 16px 10px 30px;
+ }
+
+ .lt-detail-card,
+ .lt-media-card,
+ .lt-side-card {
+ padding: 12px;
+ }
+
+ .lt-gallery-main,
+ .lt-gallery-main img,
+ .lt-gallery-main-empty {
+ min-height: 260px;
+ }
+
+ .lt-feature-row {
+ grid-template-columns: 1fr;
+ gap: 10px;
+ }
+
+ .lt-price-row {
+ flex-direction: column;
+ }
+
+ .lt-meta {
+ text-align: left;
+ }
+
+ .lt-rel-card {
+ min-width: 196px;
+ width: 196px;
+ }
+
+ .lt-rel-photo {
+ height: 140px;
+ }
+}
+
+html {
+ font-family: var(--oc-font-sans);
+}
+
+body,
+button,
+input,
+select,
+textarea {
+ font-family: var(--oc-font-sans);
+}
+
+.site-main h1,
+.site-main h2,
+.site-main h3,
+.site-main h4 {
+ text-align: center;
+ letter-spacing: -0.03em;
+ text-wrap: balance;
+}
+
+.site-main h1 {
+ margin-inline: auto;
+}
+
+.listing-filter-card,
+.listing-card,
+.panel-surface,
+.panel-list-card {
+ box-shadow: 0 16px 40px rgba(15, 23, 42, 0.05);
+}
+
+.listing-filter-card,
+.listing-card {
+ border-color: #d9e2ef;
+}
+
+.listing-filter-card {
+ text-align: center;
+ border-radius: 18px;
+}
+
+.listing-card {
+ border-radius: 18px;
+ text-align: center;
+}
+
+.listing-card .listing-title {
+ max-width: 26ch;
+ margin-inline: auto;
+ line-height: 1.45;
+}
+
+.lt-card {
+ background: #ffffff;
+ border-color: #d9e2ef;
+}
+
+.lt-price-row {
+ flex-direction: column;
+ justify-content: center;
+ align-items: center;
+ text-align: center;
+}
+
+.lt-price {
+ font-size: 2.25rem;
+ line-height: 1.05;
+ letter-spacing: -0.04em;
+}
+
+.lt-title {
+ margin-inline: auto;
+ max-width: 24ch;
+ font-size: 1.35rem;
+ text-align: center;
+}
+
+.lt-meta {
+ text-align: center;
+ font-size: 0.95rem;
+}
+
+.lt-credit {
+ flex-direction: column;
+ text-align: center;
+}
+
+.lt-credit h4 {
+ font-size: 1.15rem;
+}
+
+.lt-credit p {
+ font-size: 0.95rem;
+}
+
+.lt-section-title,
+.lt-related-title,
+.lt-pill-title {
+ font-size: 1.55rem;
+ text-align: center;
+}
+
+.lt-seller-head {
+ justify-content: center;
+ text-align: center;
+}
+
+.lt-seller-name {
+ font-size: 1.4rem;
+}
+
+.lt-actions {
+ justify-content: center;
+}
+
+.lt-btn {
+ height: 44px;
+ font-size: 1rem;
+}
+
+.panel-surface {
+ background: rgba(255, 255, 255, 0.94);
+ border: 1px solid #d9e2ef;
+ border-radius: 24px;
+ padding: 1.5rem;
+ text-align: center;
+}
+
+.panel-toolbar {
+ display: flex;
+ flex-direction: column;
+ align-items: center;
+ gap: 1rem;
+ margin-bottom: 1.5rem;
+}
+
+.panel-search {
+ position: relative;
+ width: 100%;
+ max-width: 42rem;
+}
+
+.panel-search-icon {
+ position: absolute;
+ top: 50%;
+ left: 1.15rem;
+ transform: translateY(-50%);
+ color: #94a3b8;
+}
+
+.panel-search-input {
+ width: 100%;
+ height: 3.25rem;
+ border-radius: 999px;
+ border: 1px solid #cfd8e3;
+ background: #ffffff;
+ padding: 0 1.25rem 0 3.1rem;
+ font-size: 1rem;
+ font-weight: 600;
+ color: #334155;
+ text-align: center;
+}
+
+.panel-search-input::placeholder {
+ color: #94a3b8;
+ font-weight: 500;
+}
+
+.panel-filter-tabs {
+ display: flex;
+ flex-wrap: wrap;
+ align-items: center;
+ justify-content: center;
+ gap: 0.75rem;
+}
+
+.panel-filter-tab {
+ min-height: 2.75rem;
+ padding: 0.75rem 1.3rem;
+ border-radius: 999px;
+ border: 1px solid #cfd8e3;
+ background: #ffffff;
+ color: #475569;
+ font-size: 0.95rem;
+ font-weight: 600;
+ transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease;
+}
+
+.panel-filter-tab:hover {
+ background: #f8fafc;
+}
+
+.panel-filter-tab.is-active {
+ border-color: var(--oc-primary-soft-border);
+ background: var(--oc-primary-soft);
+ color: var(--oc-primary);
+}
+
+.panel-list-card {
+ border: 1px solid #d9e2ef;
+ border-radius: 24px;
+ background: #fbfcfe;
+ padding: 1.25rem;
+ text-align: center;
+}
+
+.panel-list-card-body {
+ display: flex;
+ flex-direction: column;
+ align-items: center;
+ gap: 1.25rem;
+}
+
+.panel-list-media {
+ width: 100%;
+ max-width: 16.25rem;
+ height: 11rem;
+ border-radius: 18px;
+ overflow: hidden;
+}
+
+.panel-list-main {
+ display: flex;
+ flex: 1;
+ min-width: 0;
+ flex-direction: column;
+ align-items: center;
+}
+
+.panel-list-summary {
+ display: flex;
+ flex-wrap: wrap;
+ align-items: center;
+ justify-content: center;
+ gap: 0.75rem;
+}
+
+.panel-list-price {
+ font-size: 1.9rem;
+ font-weight: 800;
+ line-height: 1.05;
+ letter-spacing: -0.04em;
+}
+
+.panel-status-badge {
+ display: inline-flex;
+ min-height: 2.25rem;
+ align-items: center;
+ justify-content: center;
+ padding: 0 1rem;
+ border-radius: 999px;
+ font-size: 0.95rem;
+ font-weight: 700;
+}
+
+.panel-list-title {
+ max-width: 26ch;
+ margin-top: 0.35rem;
+ font-size: 1.2rem;
+ font-weight: 700;
+ line-height: 1.35;
+}
+
+.panel-list-actions {
+ display: flex;
+ flex-wrap: wrap;
+ align-items: center;
+ justify-content: center;
+ gap: 0.75rem;
+ margin-top: auto;
+ padding-top: 1.25rem;
+}
+
+.panel-action-btn {
+ min-height: 2.75rem;
+ border-radius: 999px;
+ padding: 0.75rem 1.35rem;
+ font-size: 0.95rem;
+ font-weight: 700;
+ transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease;
+}
+
+.panel-action-btn-secondary {
+ border: 1px solid var(--oc-primary-soft-border);
+ background: #ffffff;
+ color: var(--oc-primary);
+}
+
+.panel-action-btn-secondary:hover {
+ background: var(--oc-primary-soft);
+}
+
+.panel-action-btn-primary {
+ border: 1px solid var(--oc-primary);
+ background: var(--oc-primary);
+ color: #ffffff;
+}
+
+.panel-action-btn-primary:hover {
+ border-color: var(--oc-primary-strong);
+ background: var(--oc-primary-strong);
+}
+
+.panel-list-aside {
+ display: flex;
+ flex-direction: column;
+ align-items: center;
+ justify-content: center;
+ gap: 0.95rem;
+}
+
+.panel-stats {
+ display: flex;
+ flex-wrap: wrap;
+ justify-content: center;
+ gap: 0.75rem;
+}
+
+.panel-stat-box {
+ display: inline-flex;
+ min-width: 5.5rem;
+ min-height: 2.75rem;
+ align-items: center;
+ justify-content: center;
+ gap: 0.5rem;
+ border-radius: 1rem;
+ background: #e9eff6;
+ padding: 0.75rem 1rem;
+ font-size: 0.95rem;
+ font-weight: 700;
+ color: #475569;
+}
+
+.panel-list-dates {
+ max-width: 24ch;
+ font-size: 0.95rem;
+ color: #64748b;
+ text-align: center;
+}
+
+.panel-inline-note {
+ margin-top: 1rem;
+ border-radius: 1rem;
+ background: #eef6ff;
+ padding: 0.9rem 1rem;
+ font-size: 0.95rem;
+ color: #334155;
+ text-align: center;
+}
+
+.panel-empty-state {
+ border: 1px dashed #cbd5e1;
+ border-radius: 1rem;
+ padding: 4rem 1rem;
+ text-align: center;
+ color: #64748b;
+}
+
+@media (min-width: 1280px) {
+ .panel-list-card-body {
+ flex-direction: row;
+ align-items: center;
+ justify-content: space-between;
+ }
+
+ .panel-list-main {
+ padding-inline: 1rem;
+ }
+
+ .panel-list-aside {
+ flex: 0 0 15rem;
+ }
+}
+
+@media (max-width: 1080px) {
+ .lt-price {
+ font-size: 2rem;
+ }
+
+ .lt-seller-name,
+ .lt-section-title,
+ .lt-related-title,
+ .lt-pill-title {
+ font-size: 1.35rem;
+ }
+}
+
+@media (max-width: 640px) {
+ .panel-surface {
+ padding: 1.1rem;
+ border-radius: 20px;
+ }
+
+ .panel-list-card {
+ padding: 1rem;
+ border-radius: 20px;
+ }
+
+ .panel-list-price {
+ font-size: 1.6rem;
+ }
+
+ .panel-list-title {
+ font-size: 1.05rem;
+ }
+
+ .lt-price {
+ font-size: 1.75rem;
+ }
+
+ .lt-title {
+ font-size: 1.15rem;
+ }
+
+ .lt-meta {
+ text-align: center;
+ }
+}
diff --git a/resources/views/errors/403.blade.php b/resources/views/errors/403.blade.php
index 5a47fa522..a438078cd 100644
--- a/resources/views/errors/403.blade.php
+++ b/resources/views/errors/403.blade.php
@@ -5,9 +5,9 @@
403 Forbidden
-
+ @vite(['resources/css/app.css', 'resources/js/app.js'])
-
+
403
Bu sayfaya erişim izniniz yok.
diff --git a/resources/views/layouts/app.blade.php b/resources/views/layouts/app.blade.php
index 25b9c0132..15fb945d1 100644
--- a/resources/views/layouts/app.blade.php
+++ b/resources/views/layouts/app.blade.php
@@ -41,11 +41,10 @@
{{ $siteName }} @hasSection('title') - @yield('title') @endif
-
-
+ @vite(['resources/css/app.css', 'resources/js/app.js'])
@livewireStyles
-
+