MikaFil's picture
Update style/defaults/style.css
1ef0545 verified
/* Widget container styling */
.ply-widget-container {
position: relative;
width: 100%;
height: 0;
background-color: white;
transition: all 0.3s ease;
box-sizing: border-box;
overflow: hidden;
}
.ply-widget-container.fake-fullscreen {
position: fixed !important;
top: 0 !important;
left: 0 !important;
width: 100vw !important;
height: 100vh !important;
padding-bottom: 0 !important;
z-index: 9999 !important;
background-color: black;
border-radius: 0 !important;
margin: 0 !important;
max-width: 100vw !important;
max-height: 100vh !important;
box-sizing: border-box;
overflow: hidden;
}
.ply-widget-container:fullscreen,
.ply-widget-container:-webkit-full-screen,
.ply-widget-container:-moz-full-screen,
.ply-widget-container:-ms-fullscreen {
width: 100vw !important;
height: 100vh !important;
padding-bottom: 0 !important;
border-radius: 0 !important;
background-color: black;
}
.viewer-container {
display: none;
position: absolute;
top: 0; left: 0; right: 0; bottom: 0;
width: 100%; height: 100%;
background: black;
border: 1px solid #474558;
border-radius: 10px;
overflow: hidden;
box-sizing: border-box;
transition: all 0.3s ease;
min-height: 100%;
object-fit: contain;
}
.fake-fullscreen .viewer-container,
:fullscreen .viewer-container,
:-webkit-full-screen .viewer-container,
:-moz-full-screen .viewer-container,
:-ms-fullscreen .viewer-container {
border-radius: 0;
border: none;
width: 100%;
height: 100%;
}
.ply-canvas {
width: 100%;
height: 100%;
display: block;
background-color: transparent;
z-index: 1;
position: absolute;
top: 0; left: 0; right: 0; bottom: 0;
}
.fake-fullscreen .ply-canvas,
:fullscreen .ply-canvas,
:-webkit-full-screen .ply-canvas,
:-moz-full-screen .ply-canvas,
:-ms-fullscreen .ply-canvas {
width: 100vw;
height: 100vh;
}
.progress-dialog {
position: absolute;
top: 50%; left: 50%;
transform: translate(-50%, -50%);
border: none;
background: rgba(0,0,0,0.7);
padding: 20px;
border-radius: 5px;
z-index: 1000;
display: none;
color: white;
}
progress {
width: 250px;
height: 15px;
appearance: none;
border: none;
border-radius: 10px;
overflow: hidden;
}
progress::-webkit-progress-bar {
background-color: #333;
border-radius: 10px;
}
progress::-webkit-progress-value {
background-color: #4682B4;
border-radius: 10px;
}
progress::-moz-progress-bar {
background-color: #4682B4;
border-radius: 10px;
}
/* -------- HORIZONTAL BUTTONS ROW --------- */
.controls-row {
position: absolute;
top: 12px;
right: 12px;
display: flex;
flex-direction: row;
align-items: center;
gap: 8px; /* Same gap as your original layout */
z-index: 1001;
}
@media (max-width: 600px) {
.controls-row {
top: 8px;
right: 8px;
gap: 4px;
}
}
/* All buttons look the same, including color button */
.widget-button,
.color-menu-btn {
width: 32px;
height: 32px;
background-color: #F2F0EF;
border: 1px solid #ccc;
border-radius: 8px;
cursor: pointer;
font-size: 16px;
color: #545454;
display: flex !important;
align-items: center;
justify-content: center;
transition: background-color 0.2s, border-color 0.2s, box-shadow 0.18s;
z-index: 1000;
opacity: 1 !important;
visibility: visible !important;
margin: 0;
box-sizing: border-box;
position: relative;
}
.widget-button:focus,
.color-menu-btn:focus,
.widget-button:hover,
.color-menu-btn:hover {
background-color: rgba(242,240,239,0.85);
border-color: #888;
outline: none;
}
.fake-fullscreen .widget-button,
:fullscreen .widget-button,
:-webkit-full-screen .widget-button,
:-moz-full-screen .widget-button,
:-ms-fullscreen .widget-button { z-index: 10000; }
/* ---- COLOR MENU BUTTON (palette image) ---- */
.color-menu-btn {
background: linear-gradient(135deg, #fff 60%, #e1e1e1 100%);
border: 1.5px solid #ccc;
padding: 0 !important;
overflow: hidden;
}
.color-menu-btn.active,
.color-menu-btn:focus {
border-color: #4682B4;
box-shadow: 0 0 0 2px #97b9d7;
}
/* Palette image inside color-menu-btn */
.palette-btn-img {
width: 19px;
height: 19px;
display: block;
margin: 0 auto;
pointer-events: none;
/* Center vertically and horizontally */
vertical-align: middle;
/* Optional: sharp on all screens */
image-rendering: auto;
object-fit: contain;
}
@media (max-width: 600px) {
.widget-button, .color-menu-btn {
width: 30px;
height: 30px;
font-size: 12px;
border-radius: 6px;
}
.palette-btn-img {
width: 15px;
height: 15px;
}
}
/* --------- COLOR PANEL STYLES --------- */
.color-panel {
display: none;
position: absolute;
top: 40px;
left: 0;
background: rgba(242,240,239,0.98);
border: 1px solid #bbb;
border-radius: 10px;
box-shadow: 0 6px 18px rgba(0,0,0,0.13);
padding: 10px 8px;
z-index: 2000;
/* Use grid for layout */
display: grid;
grid-template-columns: repeat(3, 1fr); /* 3 columns */
gap: 8px;
min-width: 60px;
min-height: 32px;
margin-top: 2px;
}
@media (max-width: 600px) {
.color-panel {
padding: 6px 4px;
top: 30px;
left: 0;
min-width: 70px;
min-height: 42px;
gap: 5px;
grid-template-columns: repeat(3, 1fr);
}
}
/* Inline palette icon in help text */
.inline-palette {
display: inline-block;
vertical-align: middle;
width: 18px;
height: 18px;
margin-bottom: -3px; /* aligns nicely with text */
margin-left: 2px;
margin-right: 2px;
object-fit: contain;
}
@media (max-width: 600px) {
.inline-palette {
width: 14px;
height: 14px;
margin-bottom: -2px;
}
}
/* COLOR SWATCH BUTTONS */
.color-swatch-btn {
width: 18px;
height: 18px;
border: 1.5px solid #bbb;
border-radius: 4px;
margin: 0;
cursor: pointer;
outline: none;
transition: border-color 0.15s, box-shadow 0.18s;
box-shadow: 0 1px 6px rgba(0,0,0,0.07);
display: inline-block;
/* Remove excessive gap, let the container handle spacing */
}
@media (max-width: 600px) {
.color-swatch-btn {
width: 20px;
height: 20px;
border-radius: 3px;
}
}
.menu-content {
display: none;
position: absolute;
top: 50%; left: 50%;
transform: translate(-50%, -50%);
background: rgba(242,240,239,0.87);
color: #545454;
border: 1px solid #ddd;
border-radius: 10px;
padding: 18px 24px;
font-size: 15px;
line-height: 1.4;
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
z-index: 1010;
max-width: 90vw;
max-height: 90%;
overflow: scroll !important;
scrollbar-gutter: stable both-edges;
box-sizing: border-box;
}
.menu-content::-webkit-scrollbar {
width: 12px;
}
.menu-content::-webkit-scrollbar-thumb {
background: #bbbbbb;
border-radius: 8px;
}
.menu-content::-webkit-scrollbar-track {
background: #e7e7e7;
border-radius: 8px;
}
.menu-content .help-close {
position: absolute;
top: 12px;
right: 12px;
width: 32px;
height: 32px;
background: #F2F0EF;
color: #333;
border: 1px solid #ccc;
border-radius: 8px;
font-size: 17px;
font-weight: bold;
display: flex;
align-items: center;
justify-content: center;
line-height: 1;
cursor: pointer;
z-index: 2;
transition: background 0.18s;
box-sizing: border-box;
padding: 0;
}
.menu-content .help-close:hover,
.menu-content .help-close:focus {
background: #e0e0e0;
outline: none;
}
.tooltip-panel {
position: absolute;
top: 50%;
right: 5%;
transform: translate(0, -50%);
background: rgba(242,240,239,0.97);
color: #545454;
border: 1px solid #ddd;
border-radius: 6px;
padding: 20px 20px 16px 16px;
max-width: 340px;
width: 92vw;
min-width: 180px;
min-height: 60px;
max-height: 90%;
z-index: 20000;
display: none;
flex-direction: column;
align-items: flex-start;
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
overflow: scroll !important;
scrollbar-gutter: stable both-edges;
box-sizing: border-box;
}
.tooltip-panel::-webkit-scrollbar {
width: 12px;
}
.tooltip-panel::-webkit-scrollbar-thumb {
background: #bbbbbb;
border-radius: 8px;
}
.tooltip-panel::-webkit-scrollbar-track {
background: #e7e7e7;
border-radius: 8px;
}
.tooltip-content {
width: 100%;
max-width: 100%;
box-sizing: border-box;
display: flex;
flex-direction: column;
align-items: flex-start;
margin-top: 0;
}
.tooltip-close {
position: absolute;
top: 12px;
right: 12px;
width: 32px;
height: 32px;
background: #F2F0EF;
color: #333;
border: 1px solid #ccc;
border-radius: 8px;
font-size: 17px;
font-weight: bold;
display: flex;
align-items: center;
justify-content: center;
line-height: 1;
cursor: pointer;
z-index: 2;
transition: background 0.18s;
box-sizing: border-box;
padding: 0;
}
.tooltip-close:hover,
.tooltip-close:focus {
background: #e0e0e0;
outline: none;
}
.tooltip-text {
margin-bottom: 10px;
font-size: 14px;
line-height: 1.4;
overflow-wrap: break-word;
word-break: break-word;
max-width: 100%;
}
.tooltip-image {
max-width: 100%;
max-height: 35vh;
border-radius: 4px;
margin-top: 5px;
display: block;
object-fit: contain;
box-sizing: border-box;
}
@media (max-width: 600px) {
.menu-content {
width: 85vw;
max-height: 90%;
overflow: scroll !important;
scrollbar-gutter: stable both-edges;
padding: 40px 18px 14px;
font-size: 14px;
}
.menu-content .help-close {
top: 8px;
right: 8px;
width: 26px;
height: 26px;
font-size: 15px;
}
.tooltip-panel {
top: auto;
bottom: 8px;
left: 3vw;
right: 3vw;
transform: none;
width: auto;
max-width: 94vw;
min-width: 0;
max-height: 55%;
padding: 20px 10px 12px 10px;
font-size: 13.5px;
overflow: scroll !important;
scrollbar-gutter: stable both-edges;
}
.tooltip-close {
top: 8px;
right: 8px;
width: 26px;
height: 26px;
font-size: 15px;
}
.tooltip-image {
max-height: 22vh;
}
}
.help-close {
position: absolute;
top: 8px;
right: 8px;
background-color: #B0B0B0;
color: #333;
border: none;
border-radius: 4px;
width: 24px;
height: 24px;
line-height: 24px;
text-align: center;
cursor: pointer;
font-size: 16px;
display: flex;
align-items: center;
justify-content: center;
padding: 0;
}
#application-canvas { width: 100%; height: 100%; display: block; }
html, body { margin: 0; padding: 0; height: 100%; }
.progress-dialog p { margin: 0; padding: 5px; }