Bentopdf / src /css /styles.css
AUXteam's picture
Upload folder using huggingface_hub
1b756c8 verified
@import '@fontsource/dm-sans/400.css';
@import '@fontsource/dm-sans/500.css';
@import '@fontsource/dm-sans/600.css';
@import '@fontsource/dm-sans/700.css';
@import '@fontsource/dancing-script/400.css';
@import '@fontsource/great-vibes/400.css';
@import '@fontsource/kalam/300.css';
@import '@fontsource/kalam/400.css';
@import '@fontsource/kalam/700.css';
@import '@fontsource/lato/400.css';
@import '@fontsource/lato/700.css';
@import '@fontsource/lato/400-italic.css';
@import '@fontsource/merriweather/400.css';
@import '@fontsource/merriweather/700.css';
@import '@fontsource/merriweather/400-italic.css';
@import '@fontsource/cedarville-cursive/400.css';
@import 'cropperjs/dist/cropper.css';
@import 'tailwindcss';
@theme {
--font-sans: 'DM Sans', ui-sans-serif, system-ui, sans-serif;
--font-dancing: 'Dancing Script', cursive;
--font-vibes: 'Great Vibes', cursive;
--font-kalam: 'Kalam', cursive;
--font-lato: 'Lato', sans-serif;
--font-merriweather: 'Merriweather', serif;
--font-cedarville: 'Cedarville Cursive', cursive;
}
@layer base {
body {
@apply antialiased;
font-family: var(--font-sans);
}
}
@theme {
--font-sans: 'DM Sans', ui-sans-serif, system-ui;
--font-dancing: 'Dancing Script', cursive;
--font-vibes: 'Great Vibes', cursive;
--font-kalam: 'Kalam', cursive;
--font-lato: 'Lato', sans-serif;
--font-merriweather: 'Merriweather', serif;
--font-cedarville: 'Cedarville Cursive', cursive;
}
html {
scroll-behavior: smooth;
}
body {
font-family: 'DM Sans', sans-serif;
background-color: #111827;
color: #d1d5db;
}
.tool-card {
transition:
transform 0.2s ease-in-out,
box-shadow 0.2s ease-in-out;
border: 1px solid #374151;
background-color: #1f2937;
padding: 1.5rem;
border-radius: 0.5rem;
display: flex;
flex-direction: column;
align-items: center;
text-align: center;
}
.tool-card:hover {
transform: translateY(-5px);
box-shadow:
0 10px 15px -3px rgba(0, 0, 0, 0.2),
0 4px 6px -2px rgba(0, 0, 0, 0.1);
border-color: #4f46e5;
}
.btn {
transition:
background-color 0.2s ease-in-out,
transform 0.1s ease-in-out;
}
.btn:active {
transform: scale(0.98);
}
/* Custom file input */
input[type='file']::file-selector-button {
@apply bg-indigo-600 text-white font-semibold py-2 px-4 rounded-lg cursor-pointer hover:bg-indigo-700 transition-colors duration-200 mr-4;
}
/* Custom scrollbar */
::-webkit-scrollbar {
width: 8px;
}
::-webkit-scrollbar-track {
background: #1f2937;
}
::-webkit-scrollbar-thumb {
background: #4f46e5;
border-radius: 4px;
}
::-webkit-scrollbar-thumb:hover {
background: #4338ca;
/* indigo-700 */
}
/* Style for drag-and-drop placeholder */
.sortable-ghost {
opacity: 0.4;
border: 2px dashed #4f46e5;
}
#embed-pdf-container>div {
width: 100%;
height: 100%;
}
#tool-interface {
color: #39a0ed;
}
.page-thumbnail,
#file-list>li {
cursor: grab;
}
.sortable-chosen {
cursor: grabbing;
}
.compare-viewer-wrapper.overlay-mode {
position: relative;
width: 100%;
height: 75vh;
overflow: auto;
border: 2px solid #374151;
border-radius: 0.5rem;
background-color: #1f2937;
}
/* This rule now ONLY applies to canvases in overlay mode */
.compare-viewer-wrapper.overlay-mode canvas {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: auto;
}
.compare-viewer-wrapper.side-by-side-mode {
display: flex;
gap: 1rem;
width: 100%;
}
.pdf-panel {
flex: 1;
min-width: 0;
overflow: auto;
height: 75vh;
border: 2px solid #374151;
border-radius: 0.5rem;
background-color: #1f2937;
}
/* This rule ensures canvases in side-by-side panels display at their natural rendered size. */
.pdf-panel canvas {
display: block;
margin: 0 auto;
}
footer a {
transition: color 0.2s ease-in-out;
}
.marker {
position: relative;
display: inline-block;
}
.marker::after {
content: '';
position: absolute;
bottom: -5px;
left: 0;
width: 100%;
/* height: 30px; */
background-color: orange;
/* Yellow marker color */
z-index: -1;
transform: skew(-20deg);
}
.pill {
background-color: #374151;
/* bg-gray-700 */
color: #d1d5db;
/* text-gray-300 */
padding: 8px 16px;
border-radius: 9999px;
/* rounded-full */
font-size: 14px;
font-weight: 500;
}
.cta-button {
background-color: #4f46e5;
/* indigo-600 */
color: white;
font-weight: 600;
padding: 12px 24px;
border-radius: 8px;
/* rounded-lg */
transition: background-color 0.2s ease-in-out;
}
.cta-button:hover {
background-color: #4338ca;
/* indigo-700 */
}
.marker-text {
background-color: rgba(255, 255, 0, 0.5);
/* Yellow marker color */
padding: 0 5px;
}
.feature-card {
background-color: #1f2937;
/* bg-gray-800 */
padding: 24px;
border-radius: 8px;
/* rounded-lg */
text-align: center;
}
.nav-link {
@apply text-gray-300 hover:bg-gray-700 hover:text-white px-3 py-2 rounded-md text-sm font-medium transition-colors;
}
.mobile-nav-link {
@apply text-gray-300 hover:bg-gray-700 hover:text-white block px-3 py-2 rounded-md text-base font-medium transition-colors;
}
.marker-slanted {
position: relative;
display: inline-block;
}
.marker-slanted::before {
content: '';
position: absolute;
left: 0;
right: 0;
bottom: 0;
height: 6px;
background: linear-gradient(120deg, #6366f1, #8b5cf6);
z-index: -1;
}
.section-divider {
height: 1px;
background: linear-gradient(to right, transparent, #4d44f7, transparent);
/* Fades from transparent to indigo and back */
margin: 2rem auto;
/* my-16 */
max-width: 42rem;
/* max-w-xl */
opacity: 0.5;
}
.btn-gradient {
display: inline-block;
padding: 0.75rem 2rem;
/* py-3 px-8 */
border-radius: 0.5rem;
/* rounded-lg */
background-image: linear-gradient(to bottom, #6366f1, #4f46e5);
/* from-indigo-500 to-indigo-600 */
color: #ffffff;
/* text-white */
font-weight: 600;
/* font-semibold */
transition-property: all;
transition-duration: 200ms;
transform: translateY(0);
}
.btn-gradient:hover {
box-shadow:
0 10px 15px -3px rgba(79, 70, 229, 0.3),
0 4px 6px -4px rgba(79, 70, 229, 0.3);
}
.btn-gradient:focus {
outline: 2px solid transparent;
outline-offset: 2px;
box-shadow:
0 0 0 2px #111827,
0 0 0 4px #818cf8;
/* focus:ring-2 focus:ring-offset-2 focus:ring-offset-gray-900 focus:ring-indigo-400 */
}
.btn-gradient:disabled {
opacity: 0.5;
cursor: not-allowed;
transform: none;
box-shadow: none;
}
.solid-spinner {
width: 64px;
/* w-16 */
height: 64px;
/* h-16 */
border: 5px solid #374151;
/* border-gray-700 */
border-bottom-color: #4f46e5;
/* border-indigo-600 */
border-radius: 50%;
display: inline-block;
box-sizing: border-box;
animation: spin 1s linear infinite;
}
@keyframes spin {
0% {
transform: rotate(0deg);
}
100% {
transform: rotate(360deg);
}
}
#signature-ghost {
position: absolute;
z-index: 100;
pointer-events: none;
/* Allows clicks to pass through to the canvas */
opacity: 0.6;
background-size: contain;
background-repeat: no-repeat;
}
/* Highlight for selected signature in the saved list */
.saved-signature.selected {
border-color: #4f46e5;
/* indigo-600 */
box-shadow: 0 0 10px rgba(79, 70, 229, 0.5);
}
/* Cursor change when hovering over a placed signature */
#canvas-sign.movable {
cursor: move;
}
#canvas-sign.resize-ns {
cursor: ns-resize;
}
#canvas-sign.resize-ew {
cursor: ew-resize;
}
#canvas-sign.resize-nesw {
cursor: nesw-resize;
}
#canvas-sign.resize-nwse {
cursor: nwse-resize;
}
.faq-item.open .faq-question {
color: #818cf8;
/* indigo-400 */
}
.faq-item.open .faq-icon {
transform: rotate(180deg);
}
/* Testimonial Card Styles */
.testimonial-card {
background-color: #1f2937;
/* bg-gray-800 */
padding: 24px;
border-radius: 0.75rem;
/* rounded-xl */
border: 1px solid #374151;
/* border-gray-700 */
display: flex;
flex-direction: column;
}
.pill {
background-color: #374151;
/* bg-gray-700 */
color: #d1d5db;
/* text-gray-300 */
padding: 8px 16px;
border-radius: 9999px;
/* rounded-full */
font-size: 14px;
font-weight: 500;
}
.pill {
background-color: #374151;
/* bg-gray-700 */
color: #d1d5db;
/* text-gray-300 */
/* Smaller padding and font size by default for mobile */
padding: 6px 12px;
font-size: 12px;
border-radius: 9999px;
/* rounded-full */
font-weight: 500;
}
/* On small screens (640px) and up, revert to the larger size */
@media (min-width: 640px) {
.pill {
padding: 8px 16px;
font-size: 14px;
}
}
/* Ensure form-field-group contents don't overflow on small screens */
.form-field-group .capitalize {
word-break: break-all;
}
@media (max-width: 1023px) {
#form-fields-container {
overflow-x: auto;
white-space: nowrap;
}
.form-field-group {
display: inline-block;
width: 90%;
/* Adjust as needed */
margin-right: 1rem;
}
}
#page-merge-preview {
display: grid;
gap: 1rem;
padding: 1rem;
grid-template-columns: repeat(auto-fit, minmax(100px, 1fr));
}
.legal-content h2 {
font-size: 1.5rem;
line-height: 2rem;
font-weight: 700;
color: white;
margin-top: 2rem;
margin-bottom: 1rem;
}
.legal-content h3 {
font-size: 1.25rem;
line-height: 1.75rem;
font-weight: 600;
color: rgb(129 140 248);
margin-top: 1.5rem;
margin-bottom: 0.75rem;
}
.legal-content p {
margin-bottom: 1rem;
line-height: 1.625;
color: rgb(156 163 175);
}
.legal-content ul {
list-style-type: disc;
list-style-position: inside;
margin-bottom: 1rem;
padding-left: 1rem;
color: rgb(156 163 175);
}
.legal-content a {
color: rgb(129 140 248);
text-decoration: underline;
}
.legal-content a:hover {
color: rgb(165 180 252);
}
details>summary {
list-style: none;
}
details>summary::-webkit-details-marker {
display: none;
}
details>summary .icon {
transition: transform 0.2s ease-in-out;
}
details[open]>summary .icon {
transform: rotate(45deg);
}
button,
.btn,
.btn-gradient {
cursor: pointer;
}
button:disabled,
.btn:disabled {
cursor: not-allowed;
}
/* Keyboard Shortcuts Styles */
.shortcut-key {
display: inline-flex;
align-items: center;
justify-content: center;
min-width: 1.5rem;
height: 1.5rem;
padding: 0 0.25rem;
font-size: 0.75rem;
font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
line-height: 1;
color: #e5e7eb;
background-color: #374151;
border: 1px solid #4b5563;
border-radius: 0.25rem;
box-shadow: 0 1px 0 0 #1f2937;
}
.shortcut-input {
font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
letter-spacing: 0.05em;
}
.shortcut-input:focus {
outline: none;
border-color: #6366f1;
box-shadow: 0 0 0 2px rgba(99, 102, 241, 0.2);
}
/* Custom Scrollbar for Modal Content */
#shortcuts-list::-webkit-scrollbar {
width: 6px;
}
#shortcuts-list::-webkit-scrollbar-track {
background: #1f2937;
}
#shortcuts-list::-webkit-scrollbar-thumb {
background: #4b5563;
border-radius: 3px;
}
#shortcuts-list::-webkit-scrollbar-thumb:hover {
background: #6b7280;
}
/* Scroll to Top Button Visibility */
#scroll-to-top-btn.visible {
opacity: 1;
transform: translateY(0);
visibility: visible;
}
.bg-grid-pattern {
position: absolute;
inset: 0;
z-index: -1;
background-size: 60px 60px;
background-image:
linear-gradient(to right, rgba(255, 255, 255, 0.05) 1px, transparent 1px),
linear-gradient(to bottom, rgba(255, 255, 255, 0.05) 1px, transparent 1px);
mask-image: radial-gradient(ellipse at center, black 40%, transparent 80%);
-webkit-mask-image: radial-gradient(ellipse at center, black 40%, transparent 80%);
pointer-events: none;
}
/* Hide spin buttons for number inputs */
input[type="number"] {
appearance: none;
-moz-appearance: textfield; /* Firefox */
}
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
-webkit-appearance: none; /* Chrome, Safari, Edge */
margin: 0;
}