UI updates
This commit is contained in:
@@ -665,6 +665,12 @@ html, body {
|
|||||||
border: 1px solid #e8dec5 !important;
|
border: 1px solid #e8dec5 !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.save-prompt-card {
|
||||||
|
border: 1px solid #e0d5c5 !important;
|
||||||
|
border-left: 4px solid #8c4a32 !important;
|
||||||
|
border-radius: 8px !important;
|
||||||
|
}
|
||||||
|
|
||||||
/* Mobile Experience: Full-screen Parchment */
|
/* Mobile Experience: Full-screen Parchment */
|
||||||
@media (max-width: 959px) {
|
@media (max-width: 959px) {
|
||||||
.landing-wrapper {
|
.landing-wrapper {
|
||||||
@@ -678,14 +684,12 @@ html, body {
|
|||||||
overflow: visible !important;
|
overflow: visible !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* 2. Kill the Wood Background and apply Parchment to the whole page */
|
|
||||||
.recipe-bg, .landing-page, .v-application {
|
.recipe-bg, .landing-page, .v-application {
|
||||||
background-color: #f4e4bc !important;
|
background-color: #f4e4bc !important;
|
||||||
background-image: none !important;
|
background-image: none !important;
|
||||||
min-height: 100vh !important;
|
min-height: 100vh !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* 3. Make the Card fill the width and remove the 'floating' shadow */
|
|
||||||
.v-container {
|
.v-container {
|
||||||
padding: 0 !important;
|
padding: 0 !important;
|
||||||
margin: 0 !important;
|
margin: 0 !important;
|
||||||
@@ -701,11 +705,9 @@ html, body {
|
|||||||
border-radius: 0 !important;
|
border-radius: 0 !important;
|
||||||
box-shadow: none !important;
|
box-shadow: none !important;
|
||||||
min-height: 100vh;
|
min-height: 100vh;
|
||||||
/* Keeps the subtle paper texture without the wood peeking through */
|
|
||||||
background-image: url("https://www.transparenttextures.com/patterns/natural-paper.png") !important;
|
background-image: url("https://www.transparenttextures.com/patterns/natural-paper.png") !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* 4. Force columns to stack so they don't squash */
|
|
||||||
.recipe-content .v-row {
|
.recipe-content .v-row {
|
||||||
display: flex !important;
|
display: flex !important;
|
||||||
flex-direction: column !important;
|
flex-direction: column !important;
|
||||||
@@ -728,21 +730,18 @@ html, body {
|
|||||||
text-shadow: none;
|
text-shadow: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* 2. Adjust the hover state for mobile (touch) */
|
|
||||||
.nav-auth-btn:hover,
|
.nav-auth-btn:hover,
|
||||||
.nav-home-btn:hover,
|
.nav-home-btn:hover,
|
||||||
.nav-btn:hover {
|
.nav-btn:hover {
|
||||||
background-color: rgba(46, 30, 10, 0.1) !important; /* Subtle dark tint */
|
background-color: rgba(46, 30, 10, 0.1) !important;
|
||||||
color: #8c4a32 !important; /* Use your rust-orange accent on hover */
|
color: #8c4a32 !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* 3. If you have an App Bar, ensure it doesn't stay transparent with white text */
|
|
||||||
.v-app-bar {
|
.v-app-bar {
|
||||||
background-color: #f4e4bc !important;
|
background-color: #f4e4bc !important;
|
||||||
border-bottom: 1px solid #dccca7 !important;
|
border-bottom: 1px solid #dccca7 !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* 4. Fix the icon colors in the nav if they are white */
|
|
||||||
.v-app-bar .v-icon {
|
.v-app-bar .v-icon {
|
||||||
color: #2e1e0a !important;
|
color: #2e1e0a !important;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -39,6 +39,26 @@
|
|||||||
</v-col>
|
</v-col>
|
||||||
</v-row>
|
</v-row>
|
||||||
|
|
||||||
|
<v-expand-transition>
|
||||||
|
<v-card
|
||||||
|
v-if="showSavePrompt"
|
||||||
|
class="mx-auto mb-6 pa-4 save-prompt-card"
|
||||||
|
max-width="500"
|
||||||
|
color="#fdfbf7"
|
||||||
|
elevation="2"
|
||||||
|
>
|
||||||
|
<div class="d-flex align-center">
|
||||||
|
<v-icon color="#8c4a32" class="mr-4" size="large">mdi-feather</v-icon>
|
||||||
|
<div>
|
||||||
|
<p class="text-subtitle-1 font-weight-bold mb-0" style="color: #5d4a36;">A Quick Note...</p>
|
||||||
|
<p class="text-body-2 mb-0" style="color: #8c7e6a;">To create a shareable link, please <strong>Save to Collection</strong> first.</p>
|
||||||
|
</div>
|
||||||
|
<v-spacer></v-spacer>
|
||||||
|
<v-btn icon="mdi-close" variant="text" size="small" color="#8c7e6a" @click="showSavePrompt = false"></v-btn>
|
||||||
|
</div>
|
||||||
|
</v-card>
|
||||||
|
</v-expand-transition>
|
||||||
|
|
||||||
<v-row justify="center" class="mt-12 pb-10">
|
<v-row justify="center" class="mt-12 pb-10">
|
||||||
<v-btn
|
<v-btn
|
||||||
class="px-8 print-btn"
|
class="px-8 print-btn"
|
||||||
@@ -117,6 +137,7 @@
|
|||||||
import { ref } from 'vue'
|
import { ref } from 'vue'
|
||||||
import '@/assets/css/app-theme.css'
|
import '@/assets/css/app-theme.css'
|
||||||
const hasShared =ref(false)
|
const hasShared =ref(false)
|
||||||
|
const showSavePrompt = ref(false)
|
||||||
|
|
||||||
const props = defineProps({
|
const props = defineProps({
|
||||||
recipe: { type: Object, default: null },
|
recipe: { type: Object, default: null },
|
||||||
@@ -133,7 +154,8 @@ const printRecipe = () => {
|
|||||||
|
|
||||||
const shareRecipe = async () => {
|
const shareRecipe = async () => {
|
||||||
if (!props.recipe?.id) {
|
if (!props.recipe?.id) {
|
||||||
alert("Please save this recipe to your collection first to generate a shareable link!");
|
showSavePrompt.value = true;
|
||||||
|
setTimeout(() => { showSavePrompt.value = false; }, 6000);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user