1912 lines
37 KiB
CSS
1912 lines
37 KiB
CSS
:root{
|
||
--sw-subcats-nudge: -45px; /* subcats vertical nudge */
|
||
--sw-below-overlap: 120px; /* sociowall overlaps map */
|
||
}
|
||
|
||
.map-page{
|
||
display:flex;
|
||
flex-direction:column;
|
||
width:100%;
|
||
}
|
||
|
||
/* Map stage - 7/8 of viewport on desktop */
|
||
.map-stage{
|
||
position:relative;
|
||
width:100%;
|
||
height: clamp(500px, 87.5vh, 1100px);
|
||
overflow: hidden;
|
||
}
|
||
|
||
.map-stage--placeholder{
|
||
display:flex;
|
||
align-items:center;
|
||
justify-content:center;
|
||
background:
|
||
radial-gradient(circle at 20% 20%, rgba(56,189,248,0.2), transparent 45%),
|
||
radial-gradient(circle at 80% 30%, rgba(14,116,144,0.25), transparent 40%),
|
||
linear-gradient(135deg, rgba(2,6,23,0.9), rgba(6,14,36,0.95));
|
||
border: 1px solid rgba(56,189,248,0.25);
|
||
}
|
||
|
||
.map-placeholder-content{
|
||
text-align:center;
|
||
padding: 16px 20px;
|
||
border-radius: 16px;
|
||
background: rgba(2, 6, 23, 0.5);
|
||
border: 1px solid rgba(148, 163, 184, 0.25);
|
||
color: #e2e8f0;
|
||
box-shadow: 0 14px 30px rgba(2,6,23,0.4);
|
||
}
|
||
|
||
.map-placeholder-title{
|
||
font-size: 18px;
|
||
font-weight: 600;
|
||
letter-spacing: 0.02em;
|
||
}
|
||
|
||
.map-placeholder-subtitle{
|
||
margin-top: 6px;
|
||
font-size: 13px;
|
||
color: rgba(226, 232, 240, 0.75);
|
||
}
|
||
|
||
.map-placeholder-overlay{
|
||
position:absolute;
|
||
display:flex;
|
||
gap: 10px;
|
||
z-index: 2;
|
||
opacity: 0.85;
|
||
}
|
||
|
||
.map-placeholder-top{
|
||
top: 16px;
|
||
left: 50%;
|
||
transform: translateX(-50%);
|
||
}
|
||
|
||
.map-placeholder-left{
|
||
left: 16px;
|
||
top: 50%;
|
||
transform: translateY(-50%);
|
||
flex-direction: column;
|
||
}
|
||
|
||
.map-placeholder-right{
|
||
right: 16px;
|
||
top: 50%;
|
||
transform: translateY(-50%);
|
||
flex-direction: column;
|
||
}
|
||
|
||
.map-placeholder-bottom{
|
||
left: 50%;
|
||
bottom: 18px;
|
||
transform: translateX(-50%);
|
||
}
|
||
|
||
.map-placeholder-pill{
|
||
width: 42px;
|
||
height: 42px;
|
||
border-radius: 14px;
|
||
background: linear-gradient(135deg, rgba(148,163,184,0.15), rgba(56,189,248,0.25));
|
||
border: 1px solid rgba(148, 163, 184, 0.25);
|
||
box-shadow: inset 0 0 0 1px rgba(15, 23, 42, 0.4);
|
||
animation: map-skel-pulse 1.6s ease-in-out infinite;
|
||
}
|
||
|
||
.map-placeholder-pill--wide{
|
||
width: min(520px, calc(100vw - 72px));
|
||
height: 48px;
|
||
border-radius: 18px;
|
||
}
|
||
|
||
.map-placeholder-chip{
|
||
width: 84px;
|
||
height: 30px;
|
||
border-radius: 999px;
|
||
background: linear-gradient(135deg, rgba(148,163,184,0.18), rgba(14,116,144,0.25));
|
||
border: 1px solid rgba(148, 163, 184, 0.25);
|
||
animation: map-skel-pulse 1.6s ease-in-out infinite;
|
||
}
|
||
|
||
@keyframes map-skel-pulse{
|
||
0%{ opacity: 0.5; }
|
||
50%{ opacity: 1; }
|
||
100%{ opacity: 0.6; }
|
||
}
|
||
|
||
/* Landscape: vh is small, but still keep map tall */
|
||
@media (orientation: landscape){
|
||
:root{ --sw-below-overlap: 90px; }
|
||
.map-stage{ height: clamp(400px, 80vh, 900px); }
|
||
}
|
||
|
||
.map-container,
|
||
.maplibre-container{
|
||
position:absolute;
|
||
inset:0;
|
||
width:100%;
|
||
height:100%;
|
||
}
|
||
|
||
.map-status{
|
||
position:absolute;
|
||
left:.5rem;
|
||
bottom:.5rem;
|
||
font-size:.7rem;
|
||
padding:.2rem .4rem;
|
||
background:rgba(0,0,0,.6);
|
||
border-radius:.5rem;
|
||
z-index:30;
|
||
}
|
||
|
||
/* BELOW MAP (scroll area) – overlaps map */
|
||
.below-stage{
|
||
margin-top: calc(var(--sw-below-overlap) * -1);
|
||
position:relative;
|
||
z-index:25;
|
||
padding: 0.5rem 1rem 1.5rem;
|
||
transition: opacity 320ms ease, filter 320ms ease;
|
||
}
|
||
|
||
.below-row{
|
||
display:flex;
|
||
gap:.6rem;
|
||
align-items:stretch;
|
||
min-width:0;
|
||
}
|
||
|
||
/* stack only ultra-small (NOT normal portrait phones) */
|
||
@media (max-width: 340px){
|
||
.below-row{ flex-direction:column; }
|
||
}
|
||
|
||
/* ======== OVERLAYS ======== */
|
||
|
||
.map-overlay{
|
||
position:absolute;
|
||
pointer-events:none;
|
||
z-index:40;
|
||
}
|
||
.map-overlay *{ pointer-events:auto; }
|
||
|
||
/* TOP: centré horizontalement, petit offset en haut */
|
||
.map-overlay-top{
|
||
top: .7rem;
|
||
left:50%;
|
||
transform:translateX(-50%);
|
||
max-width: min(980px, calc(100vw - 24px));
|
||
width:100%;
|
||
z-index: 500; /* Au-dessus des filtres (z-index: 300) */
|
||
}
|
||
|
||
|
||
/* Left / right: filtres */
|
||
.map-overlay-left{
|
||
left:.7rem;
|
||
top:50%;
|
||
transform:translateY(-50%);
|
||
display:flex;
|
||
flex-direction:column;
|
||
gap:.5rem;
|
||
}
|
||
.map-overlay-right{
|
||
right:.7rem;
|
||
top:50%;
|
||
transform:translateY(-50%);
|
||
display:flex;
|
||
flex-direction:column;
|
||
gap:.5rem;
|
||
}
|
||
|
||
|
||
/* BOTTOM: sub-cats au-dessus du Sociowall */
|
||
.map-overlay-bottom{
|
||
bottom: calc(3.2rem + var(--sw-below-overlap, 0px) + env(safe-area-inset-bottom) + var(--sw-subcats-nudge, 0px));
|
||
left:50%;
|
||
transform:translateX(-50%);
|
||
display:flex;
|
||
gap:.4rem;
|
||
}
|
||
|
||
|
||
/* Crosshair pour création */
|
||
.map-crosshair{
|
||
left:50%;
|
||
top:30%;
|
||
transform:translate(-50%,-50%);
|
||
}
|
||
.crosshair-aim{
|
||
width:34px;
|
||
height:34px;
|
||
border-radius:999px;
|
||
border:1px solid #38bdf8;
|
||
position:relative;
|
||
box-shadow:0 0 14px rgba(56,189,248,.9);
|
||
}
|
||
.crosshair-aim::before,
|
||
.crosshair-aim::after{
|
||
content:"";
|
||
position:absolute;
|
||
left:50%;
|
||
top:50%;
|
||
background:#38bdf8;
|
||
transform:translate(-50%,-50%);
|
||
}
|
||
.crosshair-aim::before{
|
||
width:70%;
|
||
height:1px;
|
||
}
|
||
.crosshair-aim::after{
|
||
width:1px;
|
||
height:70px;
|
||
}
|
||
|
||
.create-panel-compact{
|
||
position:absolute;
|
||
left:50%;
|
||
top:45%;
|
||
transform:translate(-50%,-45%);
|
||
width:300px;
|
||
max-height:74vh;
|
||
overflow:auto;
|
||
background: var(--sw-panel-bg, rgba(7, 10, 14, 0.78));
|
||
backdrop-filter: blur(18px);
|
||
border-radius:18px;
|
||
border:1px solid var(--sw-panel-border, rgba(56,189,248,0.5));
|
||
box-shadow: 0 20px 40px rgba(0,0,0,0.65), 0 0 30px rgba(56,189,248,0.25);
|
||
padding: .4rem .5rem .55rem;
|
||
color: var(--sw-text, #e5e7eb);
|
||
}
|
||
.create-panel-header{
|
||
display:flex;
|
||
justify-content:space-between;
|
||
align-items:center;
|
||
font-size:.8rem;
|
||
letter-spacing:.08em;
|
||
text-transform:uppercase;
|
||
color:var(--sw-text,#e5e7eb);
|
||
margin-bottom:.25rem;
|
||
}
|
||
.create-panel-body{
|
||
display:flex;
|
||
flex-direction:column;
|
||
gap:.4rem;
|
||
}
|
||
.create-step-label{
|
||
font-size:.65rem;
|
||
text-transform:uppercase;
|
||
letter-spacing:.2em;
|
||
color:var(--sw-muted,rgba(255,255,255,0.6));
|
||
}
|
||
.create-panel-hero{
|
||
font-size:.85rem;
|
||
color:var(--sw-text,#f8fafc);
|
||
margin:0;
|
||
}
|
||
.create-panel-step{
|
||
display:flex;
|
||
flex-direction:column;
|
||
gap:.35rem;
|
||
}
|
||
.create-panel-note{
|
||
font-size:.75rem;
|
||
color:var(--sw-muted,rgba(255,255,255,0.6));
|
||
margin:0;
|
||
}
|
||
.create-panel-field{
|
||
display:flex;
|
||
flex-direction:column;
|
||
gap:.25rem;
|
||
font-size:.7rem;
|
||
color:var(--sw-text,#e5e7eb);
|
||
}
|
||
|
||
.create-panel-selects select,
|
||
.create-input-narrow{
|
||
background:rgba(255,255,255,0.04);
|
||
color:var(--sw-text,#e5e7eb);
|
||
border-radius:.65rem;
|
||
border:1px solid var(--sw-panel-border,rgba(255,255,255,0.28));
|
||
padding:.35rem .55rem;
|
||
}
|
||
.create-panel-selects select{
|
||
min-height:36px;
|
||
}
|
||
.create-input-narrow::placeholder{
|
||
color:var(--sw-muted,rgba(255,255,255,0.6));
|
||
}
|
||
.create-textarea-tight{
|
||
background:rgba(255,255,255,0.03);
|
||
border:1px solid var(--sw-panel-border,rgba(255,255,255,0.28));
|
||
color:var(--sw-text,#e5e7eb);
|
||
border-radius:.8rem;
|
||
padding:.35rem .6rem;
|
||
font-size:.75rem;
|
||
min-height:100px;
|
||
resize:none;
|
||
}
|
||
.create-panel-actions{
|
||
display:flex;
|
||
justify-content:space-between;
|
||
gap:.5rem;
|
||
margin-top:.2rem;
|
||
}
|
||
.create-panel-btn{
|
||
flex:1;
|
||
padding:.4rem .6rem;
|
||
font-size:.7rem;
|
||
border-radius:999px;
|
||
border:1px solid var(--sw-panel-border,rgba(226,232,240,0.4));
|
||
background:var(--sw-chip-bg,rgba(15,23,42,0.75));
|
||
color:var(--sw-text,#e5e7eb);
|
||
}
|
||
.create-panel-btn.primary{
|
||
background:linear-gradient(120deg,#38bdf8,#22c55e);
|
||
border-color:transparent;
|
||
color:#0f172a;
|
||
}
|
||
.create-panel-hero,
|
||
.create-panel-note,
|
||
.create-hint-tight{
|
||
margin:0;
|
||
}
|
||
.create-link-preview-tight{
|
||
border-radius:12px;
|
||
padding:.25rem;
|
||
background:var(--sw-panel-bg-2,rgba(15,23,42,0.8));
|
||
border:1px solid var(--sw-panel-border,rgba(148,163,184,0.4));
|
||
}
|
||
.create-post-header{
|
||
display:flex;
|
||
justify-content:space-between;
|
||
align-items:center;
|
||
font-size:.8rem;
|
||
margin-bottom:.4rem;
|
||
color:#e5e7eb;
|
||
}
|
||
.create-mode-bar{
|
||
display:flex;
|
||
flex-direction:column;
|
||
gap:.35rem;
|
||
margin-bottom:.4rem;
|
||
}
|
||
.create-mode-bar-label{
|
||
font-size:.66rem;
|
||
text-transform:uppercase;
|
||
letter-spacing:.18em;
|
||
color:#94a3b8;
|
||
}
|
||
.create-mode-chips{
|
||
display:flex;
|
||
gap:.35rem;
|
||
flex-wrap:wrap;
|
||
}
|
||
.create-mode-chip{
|
||
flex:1 1 110px;
|
||
display:flex;
|
||
align-items:center;
|
||
gap:.4rem;
|
||
padding:.35rem .65rem;
|
||
border-radius:999px;
|
||
border:1px solid rgba(148, 163, 184, 0.4);
|
||
background:rgba(15, 23, 42, 0.65);
|
||
color:#e5e7eb;
|
||
font-size:.7rem;
|
||
cursor:pointer;
|
||
transition:border-color .2s ease, box-shadow .2s ease;
|
||
}
|
||
.create-mode-chip.is-active{
|
||
border-color:transparent;
|
||
background:linear-gradient(120deg,#38bdf8,#22c55e);
|
||
color:#0f172a;
|
||
box-shadow:0 10px 20px rgba(56,189,248,.25);
|
||
}
|
||
.create-mode-hint{
|
||
font-size:.72rem;
|
||
color:#cbd5f5;
|
||
line-height:1.3;
|
||
min-height:1.1rem;
|
||
}
|
||
.mode-change-btn{
|
||
margin-top:.5rem;
|
||
align-self:flex-start;
|
||
}
|
||
.mode-selector-widget{
|
||
position:absolute;
|
||
left:50%;
|
||
top:18%;
|
||
transform:translate(-50%, -5%);
|
||
pointer-events:auto;
|
||
}
|
||
.mode-selector-bg{
|
||
position:absolute;
|
||
inset:0;
|
||
border-radius:18px;
|
||
background:linear-gradient(135deg,var(--sw-panel-bg-2,rgba(15,23,42,0.95)),var(--sw-panel-bg,rgba(15,23,42,0.8)));
|
||
border:1px solid var(--sw-panel-border,rgba(56,189,248,0.4));
|
||
box-shadow:0 20px 30px rgba(0,0,0,0.45);
|
||
}
|
||
.mode-selector-chips{
|
||
position:relative;
|
||
display:flex;
|
||
flex-wrap:wrap;
|
||
gap:.5rem;
|
||
padding:.5rem;
|
||
z-index:1;
|
||
}
|
||
.mode-selector-chip{
|
||
display:flex;
|
||
align-items:center;
|
||
gap:.35rem;
|
||
padding:.5rem .8rem;
|
||
border-radius:999px;
|
||
border:1px solid var(--sw-panel-border,rgba(255,255,255,0.15));
|
||
background:var(--sw-panel-bg,rgba(15,23,42,0.9));
|
||
color:var(--sw-text,#e5e7eb);
|
||
font-size:.7rem;
|
||
cursor:pointer;
|
||
transition:transform .15s ease, border-color .15s ease;
|
||
}
|
||
.mode-selector-chip.is-active{
|
||
border-color:rgba(56,189,248,0.8);
|
||
background:rgba(56,189,248,0.25);
|
||
}
|
||
.mode-selector-chip i{
|
||
font-size:1rem;
|
||
}
|
||
.create-mode-details{
|
||
display:flex;
|
||
flex-direction:column;
|
||
gap:.2rem;
|
||
font-size:.68rem;
|
||
color:#9ca3af;
|
||
}
|
||
.create-stepper{
|
||
background:rgba(255,255,255,0.02);
|
||
border-radius:999px;
|
||
padding:.2rem .3rem;
|
||
margin-bottom:.35rem;
|
||
}
|
||
.create-step{
|
||
font-size:.6rem;
|
||
}
|
||
.create-mode-detail-line{
|
||
display:flex;
|
||
gap:.35rem;
|
||
}
|
||
.create-mode-detail-line::before{
|
||
content:"•";
|
||
font-size:.9rem;
|
||
line-height:1.8;
|
||
color:#38bdf8;
|
||
}
|
||
|
||
@media (max-width: 640px){
|
||
.create-mode-chips{
|
||
flex-wrap:nowrap;
|
||
overflow-x:auto;
|
||
}
|
||
.create-mode-chip{
|
||
flex:0 0 auto;
|
||
}
|
||
}
|
||
.create-mode-panel{
|
||
margin-bottom:.4rem;
|
||
display:flex;
|
||
flex-direction:column;
|
||
gap:.35rem;
|
||
}
|
||
.create-mode-summary{
|
||
display:none;
|
||
align-items:center;
|
||
justify-content:space-between;
|
||
gap:.35rem;
|
||
border-radius:999px;
|
||
border:1px solid rgba(148,163,184,0.4);
|
||
padding:.35rem .6rem;
|
||
background:rgba(15,23,42,0.5);
|
||
font-size:.72rem;
|
||
color:#e5e7eb;
|
||
margin-bottom:.4rem;
|
||
}
|
||
.create-mode-summary-label{
|
||
display:flex;
|
||
align-items:center;
|
||
gap:.3rem;
|
||
}
|
||
.create-mode-summary-btn{
|
||
border-radius:999px;
|
||
border:1px solid rgba(148,163,184,0.6);
|
||
background:transparent;
|
||
color:#e5e7eb;
|
||
padding:.2rem .6rem;
|
||
font-size:.65rem;
|
||
cursor:pointer;
|
||
}
|
||
.create-mode-title{
|
||
font-size:.68rem;
|
||
text-transform:uppercase;
|
||
letter-spacing:.18em;
|
||
color:#94a3b8;
|
||
}
|
||
.create-mode-chips{
|
||
display:flex;
|
||
flex-wrap:wrap;
|
||
gap:.4rem;
|
||
}
|
||
.create-mode-chip{
|
||
flex:1 1 110px;
|
||
display:flex;
|
||
align-items:center;
|
||
gap:.35rem;
|
||
padding:.35rem .6rem;
|
||
border-radius:999px;
|
||
border:1px solid rgba(148, 163, 184, 0.5);
|
||
background:rgba(15,23,42,0.65);
|
||
color:#e5e7eb;
|
||
font-size:.7rem;
|
||
cursor:pointer;
|
||
transition:border-color .2s ease, box-shadow .2s ease;
|
||
}
|
||
.create-mode-chip:hover{
|
||
border-color:rgba(56,189,248,0.8);
|
||
}
|
||
.create-mode-chip.is-active{
|
||
border-color:transparent;
|
||
background:linear-gradient(120deg,#38bdf8,#22c55e);
|
||
color:#0f172a;
|
||
box-shadow:0 6px 16px rgba(34,197,94,0.35);
|
||
}
|
||
.create-mode-icon{
|
||
font-size:0.9rem;
|
||
}
|
||
.create-mode-helper{
|
||
font-size:.72rem;
|
||
color:#cbd5f5;
|
||
line-height:1.25;
|
||
min-height:1.2rem;
|
||
}
|
||
|
||
@media (max-width: 640px){
|
||
.create-mode-summary{
|
||
display:flex;
|
||
}
|
||
.create-mode-panel{
|
||
display:none;
|
||
}
|
||
.create-mode-panel.create-mode-visible-mobile{
|
||
display:flex;
|
||
}
|
||
}
|
||
@media (max-width: 640px){
|
||
.create-post-panel{
|
||
bottom:3%;
|
||
left:50%;
|
||
transform:translateX(-50%);
|
||
width:95%;
|
||
max-width:100%;
|
||
max-height:70vh;
|
||
border-radius:14px;
|
||
padding:.5rem .6rem .6rem;
|
||
}
|
||
.create-mode-chips{
|
||
gap:.3rem;
|
||
flex-wrap:nowrap;
|
||
overflow-x:auto;
|
||
}
|
||
.create-mode-chip{
|
||
flex:0 0 auto;
|
||
}
|
||
.create-mode-chip span{
|
||
font-size:.65rem;
|
||
}
|
||
.create-mode-title{
|
||
font-size:.6rem;
|
||
}
|
||
.create-stepper{
|
||
gap:.25rem;
|
||
}
|
||
.create-step-label{
|
||
font-size:.6rem;
|
||
}
|
||
.create-hint{
|
||
font-size:.65rem;
|
||
}
|
||
}
|
||
.create-close{
|
||
background:transparent;
|
||
border:none;
|
||
color:#9ca3af;
|
||
font-size:.85rem;
|
||
padding:.1rem .3rem;
|
||
cursor:pointer;
|
||
}
|
||
.create-stepper{
|
||
display:flex;
|
||
justify-content:space-between;
|
||
align-items:center;
|
||
gap:.4rem;
|
||
margin:.3rem 0 .35rem;
|
||
}
|
||
.create-step{
|
||
display:flex;
|
||
align-items:center;
|
||
gap:.35rem;
|
||
color:#64748b;
|
||
font-size:.68rem;
|
||
text-transform:uppercase;
|
||
letter-spacing:.08em;
|
||
}
|
||
.create-step-active{
|
||
color:#e2e8f0;
|
||
}
|
||
.create-step-dot{
|
||
width:18px;
|
||
height:18px;
|
||
border-radius:50%;
|
||
display:flex;
|
||
align-items:center;
|
||
justify-content:center;
|
||
font-size:.65rem;
|
||
background:#0f172a;
|
||
border:1px solid #334155;
|
||
color:#cbd5f5;
|
||
}
|
||
.create-step-current .create-step-dot{
|
||
background:linear-gradient(120deg, #38bdf8, #22c55e);
|
||
border-color:transparent;
|
||
color:#0f172a;
|
||
font-weight:700;
|
||
}
|
||
.create-step-label{
|
||
font-weight:600;
|
||
}
|
||
.create-step-progress{
|
||
height:4px;
|
||
background:rgba(148, 163, 184, 0.15);
|
||
border-radius:999px;
|
||
overflow:hidden;
|
||
}
|
||
.create-step-progress span{
|
||
display:block;
|
||
height:100%;
|
||
background:linear-gradient(90deg, #38bdf8, #22c55e);
|
||
}
|
||
.create-step-body{
|
||
margin-top:.35rem;
|
||
padding-bottom:.4rem;
|
||
}
|
||
.create-row{
|
||
display:flex;
|
||
align-items:center;
|
||
gap:.5rem;
|
||
margin-bottom:.4rem;
|
||
}
|
||
.create-link-row{
|
||
display:flex;
|
||
align-items:center;
|
||
gap:.5rem;
|
||
margin-bottom:.35rem;
|
||
}
|
||
.create-link-input{
|
||
flex:1;
|
||
margin-bottom:0;
|
||
}
|
||
.create-link-btn{
|
||
border-radius:999px;
|
||
border:1px solid rgba(148, 163, 184, 0.4);
|
||
background:#0f172a;
|
||
color:#e2e8f0;
|
||
padding:.35rem .7rem;
|
||
font-size:.7rem;
|
||
cursor:pointer;
|
||
white-space:nowrap;
|
||
}
|
||
.create-link-btn:disabled{
|
||
opacity:.6;
|
||
cursor:not-allowed;
|
||
}
|
||
.create-link-meta{
|
||
display:flex;
|
||
gap:.6rem;
|
||
font-size:.68rem;
|
||
color:#94a3b8;
|
||
margin-bottom:.35rem;
|
||
}
|
||
.create-link-error{
|
||
font-size:.68rem;
|
||
color:#f87171;
|
||
margin-bottom:.35rem;
|
||
}
|
||
.crosshair-label{
|
||
font-size:.75rem;
|
||
color:#cbd5f5;
|
||
}
|
||
.create-hint{
|
||
margin-top:.2rem;
|
||
font-size:.7rem;
|
||
color:#94a3b8;
|
||
}
|
||
|
||
.create-row select{
|
||
flex:1;
|
||
background:#020617;
|
||
border-radius:999px;
|
||
border:1px solid #4b5563;
|
||
padding:.35rem .7rem;
|
||
font-size:.75rem;
|
||
color:#e5e7eb;
|
||
}
|
||
.create-input{
|
||
width:100%;
|
||
margin-bottom:.3rem;
|
||
border-radius:999px;
|
||
border:1px solid #4b5563;
|
||
padding:.35rem .7rem;
|
||
background:#020617;
|
||
color:#e5e7eb;
|
||
font-size:.8rem;
|
||
}
|
||
.create-textarea{
|
||
width:100%;
|
||
border-radius:.75rem;
|
||
border:1px solid #4b5563;
|
||
padding:.35rem .7rem;
|
||
background:#020617;
|
||
color:#e5e7eb;
|
||
resize:none;
|
||
font-size:.78rem;
|
||
}
|
||
.create-image-option{
|
||
margin-top:.4rem;
|
||
}
|
||
.create-checkbox{
|
||
display:flex;
|
||
align-items:center;
|
||
gap:.5rem;
|
||
font-size:.72rem;
|
||
color:#e5e7eb;
|
||
cursor:pointer;
|
||
}
|
||
.create-image-panel{
|
||
display:flex;
|
||
flex-direction:column;
|
||
gap:.4rem;
|
||
margin-top:.35rem;
|
||
}
|
||
.create-image-choice{
|
||
display:flex;
|
||
gap:.5rem;
|
||
align-items:center;
|
||
margin:.25rem 0 .35rem;
|
||
}
|
||
.create-image-choice-btn{
|
||
flex:1;
|
||
padding:.4rem .6rem;
|
||
border-radius:999px;
|
||
border:1px solid rgba(148, 163, 184, 0.35);
|
||
background:rgba(15, 23, 42, 0.6);
|
||
color:#e2e8f0;
|
||
font-size:.72rem;
|
||
font-weight:700;
|
||
cursor:pointer;
|
||
}
|
||
.create-image-choice-btn.is-active{
|
||
border-color: rgba(56, 189, 248, 0.7);
|
||
box-shadow: 0 0 0 2px rgba(56, 189, 248, 0.2);
|
||
}
|
||
.create-image-placeholder{
|
||
display:flex;
|
||
align-items:center;
|
||
gap:.6rem;
|
||
padding:.6rem;
|
||
border-radius:12px;
|
||
border:1px dashed rgba(148, 163, 184, 0.4);
|
||
background:rgba(15, 23, 42, 0.45);
|
||
margin:.35rem 0 .65rem;
|
||
}
|
||
.create-image-placeholder-title{
|
||
font-size:.8rem;
|
||
font-weight:800;
|
||
color:#e2e8f0;
|
||
}
|
||
.create-image-placeholder-sub{
|
||
font-size:.7rem;
|
||
color:#94a3b8;
|
||
}
|
||
.create-image-row{
|
||
display:flex;
|
||
gap:.5rem;
|
||
align-items:center;
|
||
}
|
||
.create-file-input{
|
||
display:none;
|
||
}
|
||
.create-file-btn{
|
||
display:inline-flex;
|
||
align-items:center;
|
||
gap:.4rem;
|
||
padding:.35rem .7rem;
|
||
border-radius:999px;
|
||
border:1px solid rgba(148, 163, 184, 0.4);
|
||
color:#e2e8f0;
|
||
font-size:.7rem;
|
||
background:rgba(15, 23, 42, 0.8);
|
||
cursor:pointer;
|
||
}
|
||
.create-file-btn--camera{
|
||
border-color: rgba(56, 189, 248, 0.65);
|
||
color:#e0f2fe;
|
||
}
|
||
.create-uploading{
|
||
font-size:.7rem;
|
||
color:#38bdf8;
|
||
}
|
||
.create-image-gallery{
|
||
display:flex;
|
||
flex-direction:column;
|
||
gap:.3rem;
|
||
margin-bottom:.4rem;
|
||
}
|
||
.create-gallery-title{
|
||
font-size:.7rem;
|
||
text-transform:uppercase;
|
||
letter-spacing:0.2em;
|
||
color:rgba(226, 232, 240, 0.7);
|
||
}
|
||
.create-gallery-items{
|
||
display:flex;
|
||
flex-wrap:nowrap;
|
||
gap:.3rem;
|
||
overflow-x:auto;
|
||
padding-bottom:.25rem;
|
||
}
|
||
.create-gallery-item{
|
||
position:relative;
|
||
width:54px;
|
||
height:54px;
|
||
}
|
||
.create-gallery-item img{
|
||
width:100%;
|
||
height:100%;
|
||
object-fit:cover;
|
||
border-radius:10px;
|
||
border:1px solid rgba(148, 163, 184, 0.5);
|
||
}
|
||
.create-gallery-remove{
|
||
position:absolute;
|
||
top:-6px;
|
||
right:-6px;
|
||
width:22px;
|
||
height:22px;
|
||
border-radius:50%;
|
||
border:1px solid rgba(255,255,255,0.4);
|
||
background:rgba(15,23,42,0.8);
|
||
color:#f8fafc;
|
||
font-size:12px;
|
||
display:flex;
|
||
align-items:center;
|
||
justify-content:center;
|
||
cursor:pointer;
|
||
}
|
||
.create-gallery-row{
|
||
display:flex;
|
||
gap:0;
|
||
margin-top:.1rem;
|
||
overflow-x:auto;
|
||
padding-bottom:.05rem;
|
||
}
|
||
.create-gallery-row figure{
|
||
margin:0;
|
||
}
|
||
.create-gallery-row--bottom{
|
||
margin-bottom:.2rem;
|
||
}
|
||
.create-gallery-static{
|
||
width:44px;
|
||
height:44px;
|
||
border-radius:12px;
|
||
border:1px solid rgba(255,255,255,0.3);
|
||
overflow:hidden;
|
||
flex:0 0 auto;
|
||
}
|
||
.create-gallery-static img{
|
||
width:100%;
|
||
height:100%;
|
||
object-fit:cover;
|
||
display:block;
|
||
}
|
||
.create-link-preview-card{
|
||
position:relative;
|
||
border-radius:18px;
|
||
background:rgba(15,23,42,0.85);
|
||
border:1px solid rgba(148,163,184,0.4);
|
||
box-shadow:0 20px 40px rgba(2,6,23,0.35);
|
||
padding:.35rem;
|
||
display:flex;
|
||
flex-direction:column;
|
||
gap:.45rem;
|
||
margin-bottom:.5rem;
|
||
}
|
||
.create-link-preview-card img{
|
||
width:100%;
|
||
height:140px;
|
||
border-radius:14px;
|
||
object-fit:cover;
|
||
border:1px solid rgba(148,163,184,0.5);
|
||
display:block;
|
||
}
|
||
.create-image-url-row{
|
||
display:flex;
|
||
gap:.4rem;
|
||
}
|
||
.create-gallery-add{
|
||
flex:0 0 auto;
|
||
padding:.35rem .65rem;
|
||
border-radius:999px;
|
||
border:1px solid rgba(56, 189, 248, 0.7);
|
||
background:rgba(56, 189, 248, 0.15);
|
||
color:#e0f2fe;
|
||
font-size:.72rem;
|
||
font-weight:700;
|
||
cursor:pointer;
|
||
}
|
||
.create-link-preview-meta{
|
||
display:flex;
|
||
flex-direction:column;
|
||
gap:.2rem;
|
||
font-size:.7rem;
|
||
color:#cbd5f5;
|
||
}
|
||
.create-muted{
|
||
font-size:.7rem;
|
||
color:#94a3b8;
|
||
}
|
||
.create-privacy-row{
|
||
display:flex;
|
||
align-items:center;
|
||
gap:.5rem;
|
||
font-size:.7rem;
|
||
color:#e5e7eb;
|
||
}
|
||
.create-privacy-row label{
|
||
white-space:nowrap;
|
||
color:#cbd5f5;
|
||
}
|
||
.create-privacy-row select{
|
||
flex:1;
|
||
background:#020617;
|
||
border-radius:999px;
|
||
border:1px solid #4b5563;
|
||
padding:.3rem .6rem;
|
||
font-size:.72rem;
|
||
color:#e5e7eb;
|
||
}
|
||
.create-error{
|
||
margin-top:.25rem;
|
||
font-size:.7rem;
|
||
color:#f97373;
|
||
}
|
||
.create-actions{
|
||
margin-top:.6rem;
|
||
display:flex;
|
||
justify-content:space-between;
|
||
align-items:center;
|
||
gap:.5rem;
|
||
}
|
||
.create-actions-right{
|
||
display:flex;
|
||
gap:.45rem;
|
||
align-items:center;
|
||
}
|
||
.create-back{
|
||
background:transparent;
|
||
border:1px solid rgba(148, 163, 184, 0.4);
|
||
color:#cbd5f5;
|
||
padding:.35rem .8rem;
|
||
border-radius:999px;
|
||
font-size:.72rem;
|
||
cursor:pointer;
|
||
}
|
||
.create-back:disabled{
|
||
opacity:.45;
|
||
cursor:not-allowed;
|
||
}
|
||
.create-review-card{
|
||
display:grid;
|
||
grid-template-columns:72px 1fr;
|
||
gap:.7rem;
|
||
padding:.6rem;
|
||
margin-top:.5rem;
|
||
border-radius:12px;
|
||
border:1px solid rgba(148, 163, 184, 0.35);
|
||
background:rgba(2, 6, 23, 0.7);
|
||
}
|
||
.create-review-media{
|
||
width:72px;
|
||
height:72px;
|
||
border-radius:12px;
|
||
overflow:hidden;
|
||
background:rgba(30, 41, 59, 0.85);
|
||
display:flex;
|
||
align-items:center;
|
||
justify-content:center;
|
||
}
|
||
.create-review-media img{
|
||
width:100%;
|
||
height:100%;
|
||
object-fit:cover;
|
||
}
|
||
.create-review-icon{
|
||
width:46px;
|
||
height:46px;
|
||
border-radius:14px;
|
||
background:rgba(56, 189, 248, 0.2);
|
||
display:flex;
|
||
align-items:center;
|
||
justify-content:center;
|
||
color:#38bdf8;
|
||
font-size:1.1rem;
|
||
}
|
||
.create-review-meta{
|
||
display:flex;
|
||
flex-direction:column;
|
||
gap:.2rem;
|
||
}
|
||
.create-review-title{
|
||
font-size:.85rem;
|
||
color:#e2e8f0;
|
||
font-weight:600;
|
||
}
|
||
.create-review-sub{
|
||
font-size:.7rem;
|
||
color:#94a3b8;
|
||
}
|
||
.create-review-body{
|
||
font-size:.74rem;
|
||
color:#cbd5f5;
|
||
max-height:3.8em;
|
||
overflow:hidden;
|
||
}
|
||
.create-review-visibility{
|
||
font-size:.68rem;
|
||
color:#38bdf8;
|
||
}
|
||
|
||
body[data-theme="blue"] .create-post-panel{
|
||
background: rgba(12, 20, 60, 0.96);
|
||
border-color: rgba(96, 165, 250, 0.95);
|
||
box-shadow: 0 16px 40px rgba(2,8,26,.85), 0 0 24px rgba(56,189,248,.5);
|
||
}
|
||
body[data-theme="blue"] .create-row select,
|
||
body[data-theme="blue"] .create-input,
|
||
body[data-theme="blue"] .create-textarea,
|
||
body[data-theme="blue"] .create-privacy-row select,
|
||
body[data-theme="blue"] .create-link-btn{
|
||
background: #0b1b3b;
|
||
border-color: rgba(96, 165, 250, 0.5);
|
||
color:#e2e8f0;
|
||
}
|
||
body[data-theme="blue"] .create-step{
|
||
color:#94a3b8;
|
||
}
|
||
body[data-theme="blue"] .create-step-active{
|
||
color:#e2e8f0;
|
||
}
|
||
body[data-theme="blue"] .create-step-dot{
|
||
background:#0b1b3b;
|
||
border-color: rgba(96, 165, 250, 0.6);
|
||
color:#e2e8f0;
|
||
}
|
||
body[data-theme="blue"] .create-back{
|
||
border-color: rgba(96, 165, 250, 0.55);
|
||
color:#e2e8f0;
|
||
}
|
||
body[data-theme="blue"] .create-review-card{
|
||
background: rgba(3, 10, 28, 0.7);
|
||
border-color: rgba(96, 165, 250, 0.4);
|
||
}
|
||
|
||
body[data-theme="light"] .create-post-panel{
|
||
background: rgba(248, 250, 252, 0.98);
|
||
border-color: rgba(148, 163, 184, 0.9);
|
||
box-shadow: 0 18px 36px rgba(15, 23, 42, 0.15);
|
||
color:#0f172a;
|
||
}
|
||
body[data-theme="light"] .create-row select,
|
||
body[data-theme="light"] .create-input,
|
||
body[data-theme="light"] .create-textarea,
|
||
body[data-theme="light"] .create-privacy-row select,
|
||
body[data-theme="light"] .create-link-btn{
|
||
background:#ffffff;
|
||
border-color: rgba(148, 163, 184, 0.7);
|
||
color:#0f172a;
|
||
}
|
||
body[data-theme="light"] .create-step{
|
||
color:#64748b;
|
||
}
|
||
body[data-theme="light"] .create-step-active{
|
||
color:#0f172a;
|
||
}
|
||
body[data-theme="light"] .create-step-dot{
|
||
background:#ffffff;
|
||
border-color: rgba(148, 163, 184, 0.7);
|
||
color:#334155;
|
||
}
|
||
body[data-theme="light"] .create-step-current .create-step-dot{
|
||
color:#0f172a;
|
||
}
|
||
body[data-theme="light"] .create-hint,
|
||
body[data-theme="light"] .create-muted{
|
||
color:#64748b;
|
||
}
|
||
body[data-theme="light"] .create-back{
|
||
border-color: rgba(148, 163, 184, 0.7);
|
||
color:#0f172a;
|
||
}
|
||
body[data-theme="light"] .create-review-card{
|
||
background: rgba(241, 245, 249, 0.95);
|
||
border-color: rgba(148, 163, 184, 0.6);
|
||
}
|
||
body[data-theme="light"] .create-review-title{
|
||
color:#0f172a;
|
||
}
|
||
body[data-theme="light"] .create-review-body{
|
||
color:#334155;
|
||
}
|
||
|
||
.chip-pill{
|
||
background: rgba(15, 23, 42, 0.96);
|
||
border: 1px solid rgba(148, 163, 184, 0.85);
|
||
color: #e5e7eb;
|
||
padding: 0.45rem 0.9rem;
|
||
font-size: 0.78rem;
|
||
border-radius: 999px;
|
||
cursor: pointer;
|
||
box-shadow: 0 5px 12px rgba(0,0,0,.7), 0 0 12px rgba(56,189,248,.35);
|
||
}
|
||
|
||
/* ===== SEARCHBAR TOP ===== */
|
||
|
||
.sw-searchbar{
|
||
pointer-events: auto;
|
||
display:flex;
|
||
align-items:center;
|
||
gap: .55rem;
|
||
padding: 0.42rem 0.70rem;
|
||
border-radius: 999px;
|
||
background: rgba(15, 23, 42, 0.92);
|
||
border: 1px solid rgba(148, 163, 184, 0.85);
|
||
box-shadow: 0 5px 12px rgba(0,0,0,.70), 0 0 14px rgba(56,189,248,.22);
|
||
backdrop-filter: blur(10px);
|
||
min-height: 38px;
|
||
width: 100%; /* ✅ prend toute la largeur de son conteneur */
|
||
}
|
||
|
||
.sw-searchbar:focus-within{
|
||
border-color: rgba(56,189,248,.85);
|
||
box-shadow: 0 8px 18px rgba(0,0,0,.72), 0 0 18px rgba(56,189,248,.35);
|
||
}
|
||
|
||
.sw-search-icon{
|
||
font-size: 14px;
|
||
opacity: .95;
|
||
}
|
||
|
||
.sw-search-input{
|
||
border: none;
|
||
outline: none;
|
||
background: transparent;
|
||
color: #e5e7eb;
|
||
font-size: 0.80rem;
|
||
font-weight: 800;
|
||
width: 100%;
|
||
max-width: 100%;
|
||
min-width: 0;
|
||
}
|
||
|
||
.sw-search-input::placeholder{
|
||
color: rgba(203, 213, 225, 0.88);
|
||
font-weight: 800;
|
||
}
|
||
|
||
.sw-search-clear{
|
||
border: none;
|
||
cursor: pointer;
|
||
width: 28px;
|
||
height: 28px;
|
||
border-radius: 999px;
|
||
background: rgba(2,6,23,.35);
|
||
border: 1px solid rgba(148,163,184,.35);
|
||
color: #e5e7eb;
|
||
font-weight: 900;
|
||
display:grid;
|
||
place-items:center;
|
||
}
|
||
.sw-search-clear:active{
|
||
transform: scale(0.97);
|
||
}
|
||
|
||
/* Light theme */
|
||
body[data-theme="light"] .sw-searchbar{
|
||
background: rgba(255,255,255,0.92);
|
||
border-color: rgba(148, 163, 184, 0.85);
|
||
box-shadow: 0 8px 18px rgba(0,0,0,.10);
|
||
}
|
||
body[data-theme="light"] .sw-search-input{
|
||
color:#0B1220;
|
||
}
|
||
body[data-theme="light"] .sw-search-input::placeholder{
|
||
color: rgba(91, 103, 122, 0.92);
|
||
}
|
||
body[data-theme="light"] .sw-search-clear{
|
||
background: rgba(255,255,255,.85);
|
||
color:#0B1220;
|
||
border-color: rgba(148,163,184,.55);
|
||
}
|
||
|
||
/* ===== TOP ROW: search + 2 icônes ===== */
|
||
|
||
/* Ligne entière */
|
||
.sw-top-row{
|
||
display:flex;
|
||
align-items:center;
|
||
justify-content:space-between;
|
||
gap:0.75rem;
|
||
width:100%;
|
||
}
|
||
|
||
/* ✅ Search = prend tout, icônes juste ce qu’il faut */
|
||
.sw-top-search{
|
||
flex: 1 1 auto;
|
||
max-width: 100%;
|
||
}
|
||
|
||
/* bloc des 2 boutons à droite, taille compacte */
|
||
.map-top-actions{
|
||
flex: 0 0 auto;
|
||
display:flex;
|
||
flex-direction:row;
|
||
align-items:center;
|
||
justify-content:flex-end;
|
||
gap:0.5rem;
|
||
}
|
||
|
||
/* boutons icône */
|
||
.map-action-btn{
|
||
display:flex;
|
||
flex-direction:column;
|
||
align-items:center;
|
||
justify-content:center;
|
||
padding:0.35rem 0.55rem;
|
||
border-radius:999px;
|
||
border:1px solid rgba(255,255,255,0.15);
|
||
background:rgba(5, 25, 60, 0.25);
|
||
backdrop-filter:blur(8px);
|
||
box-shadow:0 6px 14px rgba(0,0,0,0.35);
|
||
font-size:0.7rem;
|
||
line-height:1.1;
|
||
cursor:pointer;
|
||
white-space:nowrap;
|
||
}
|
||
|
||
.map-action-btn:disabled{
|
||
opacity:0.45;
|
||
cursor:default;
|
||
}
|
||
|
||
.map-action-icon{
|
||
font-size:1.05rem;
|
||
margin-bottom:0.15rem;
|
||
}
|
||
|
||
.map-action-label{
|
||
font-size:0.6rem;
|
||
text-transform:uppercase;
|
||
letter-spacing:0.04em;
|
||
}
|
||
|
||
/* petits écrans : on compresse un peu les boutons */
|
||
@media (max-width:480px){
|
||
.sw-top-row{
|
||
gap:0.5rem;
|
||
}
|
||
.map-action-btn{
|
||
padding:0.3rem 0.45rem;
|
||
}
|
||
}
|
||
|
||
/* === CACHER LES BOUTONS DE ZOOM MAPLIBRE (+/-) === */
|
||
.maplibregl-ctrl-zoom-in,
|
||
.maplibregl-ctrl-zoom-out{
|
||
display:none !important;
|
||
}
|
||
/* FIX FINAL : Texte blanc sur boutons MY SPOT / NEW WIRE (force le texte) */
|
||
.map-action-btn,
|
||
.map-action-btn * {
|
||
color: #e5e7eb !important; /* blanc forcé */
|
||
}
|
||
/* FIX FINAL : Texte noir sous thème Blue (comme Light) */
|
||
body[data-theme="blue"] .map-action-btn,
|
||
body[data-theme="blue"] .map-action-btn * {
|
||
color: #0b1220 !important; /* noir forcé */
|
||
}
|
||
/* Light theme : texte noir si besoin */
|
||
body[data-theme="light"] .map-action-btn,
|
||
body[data-theme="light"] .map-action-btn * {
|
||
color: #0b1220 !important;
|
||
}
|
||
|
||
/* FIX FINAL : Supprime le spot blanc MapLibre (cercle blanc en bas à droite) */
|
||
.maplibregl-ctrl-bottom-right,
|
||
.maplibregl-ctrl-group {
|
||
display: none !important;
|
||
}
|
||
.maplibregl-ctrl {
|
||
background: transparent !important;
|
||
box-shadow: none !important;
|
||
}
|
||
.map-overlay.mode-selector-widget{
|
||
pointer-events:none;
|
||
}
|
||
|
||
/* ===== FLOATING CREATE UI ===== */
|
||
.create-floating-ui{
|
||
--cf-bg: rgba(15,20,30,0.92);
|
||
--cf-border: rgba(100,116,139,0.25);
|
||
--cf-text: #f1f5f9;
|
||
--cf-muted: #cbd5e1;
|
||
--cf-accent: #e2e8f0;
|
||
--cf-glow: rgba(226,232,240,0.08);
|
||
--cf-input: rgba(30,41,59,0.9);
|
||
|
||
position:fixed;
|
||
bottom:50%;
|
||
left:50%;
|
||
transform:translate(-50%, 50%);
|
||
z-index:9000;
|
||
display:flex;
|
||
flex-direction:column;
|
||
gap:6px;
|
||
width:min(320px, calc(100vw - 24px));
|
||
pointer-events:none;
|
||
}
|
||
|
||
body[data-theme="light"] .create-floating-ui{
|
||
--cf-bg: rgba(255,255,255,0.94);
|
||
--cf-border: rgba(148,163,184,0.3);
|
||
--cf-text: #1e293b;
|
||
--cf-muted: #475569;
|
||
--cf-accent: #334155;
|
||
--cf-glow: rgba(51,65,85,0.08);
|
||
--cf-input: rgba(241,245,249,0.95);
|
||
}
|
||
|
||
body[data-theme="blue"] .create-floating-ui{
|
||
--cf-bg: rgba(15,23,42,0.95);
|
||
--cf-border: rgba(51,65,85,0.5);
|
||
--cf-text: #f1f5f9;
|
||
--cf-muted: #cbd5e1;
|
||
--cf-accent: #e2e8f0;
|
||
--cf-glow: rgba(226,232,240,0.06);
|
||
--cf-input: rgba(30,41,59,0.98);
|
||
}
|
||
|
||
/* Close button - inline top right */
|
||
.cfloat-close{
|
||
position:absolute;
|
||
top:-40px;
|
||
right:0;
|
||
width:32px;
|
||
height:32px;
|
||
border-radius:8px;
|
||
background: var(--cf-bg);
|
||
border:1px solid var(--cf-border);
|
||
color: var(--cf-muted);
|
||
font-size:0.85rem;
|
||
display:flex;
|
||
align-items:center;
|
||
justify-content:center;
|
||
cursor:pointer;
|
||
pointer-events:auto;
|
||
backdrop-filter:blur(20px) saturate(1.2);
|
||
-webkit-backdrop-filter:blur(20px) saturate(1.2);
|
||
box-shadow: 0 2px 8px rgba(0,0,0,0.1);
|
||
transition:all 0.2s;
|
||
}
|
||
|
||
.cfloat-close:hover{
|
||
background:rgba(239,68,68,0.15);
|
||
border-color:rgba(239,68,68,0.5);
|
||
color:#ef4444;
|
||
}
|
||
|
||
/* Box base - stacked */
|
||
.cfloat-box{
|
||
background: var(--cf-bg);
|
||
border:1px solid var(--cf-border);
|
||
border-radius:12px;
|
||
padding:10px 14px;
|
||
backdrop-filter:blur(20px) saturate(1.2);
|
||
-webkit-backdrop-filter:blur(20px) saturate(1.2);
|
||
pointer-events:auto;
|
||
color: var(--cf-text);
|
||
animation: cfloat-in 0.2s ease-out;
|
||
box-shadow: 0 4px 16px rgba(0,0,0,0.15);
|
||
}
|
||
|
||
@keyframes cfloat-in{
|
||
from{ opacity:0; transform:translateY(8px); }
|
||
to{ opacity:1; transform:translateY(0); }
|
||
}
|
||
|
||
/* Step indicator */
|
||
.cfloat-step{
|
||
display:flex;
|
||
align-items:center;
|
||
justify-content:center;
|
||
gap:8px;
|
||
font-weight:600;
|
||
font-size:0.9rem;
|
||
padding:6px 10px;
|
||
}
|
||
|
||
.cfloat-step i{
|
||
color: var(--cf-accent);
|
||
font-size:1rem;
|
||
}
|
||
|
||
/* Hint */
|
||
.cfloat-hint{
|
||
text-align:center;
|
||
padding:10px 14px;
|
||
}
|
||
|
||
.cfloat-hint p{
|
||
margin:0;
|
||
font-size:0.9rem;
|
||
line-height:1.4;
|
||
color: var(--cf-muted);
|
||
}
|
||
|
||
/* Category */
|
||
.cfloat-category label{
|
||
display:block;
|
||
font-size:0.7rem;
|
||
font-weight:600;
|
||
text-transform:uppercase;
|
||
letter-spacing:0.05em;
|
||
color: var(--cf-muted);
|
||
margin-bottom:6px;
|
||
}
|
||
|
||
.cfloat-selects{
|
||
display:flex;
|
||
gap:6px;
|
||
}
|
||
|
||
.cfloat-selects select{
|
||
flex:1;
|
||
background: var(--cf-input);
|
||
color: var(--cf-text);
|
||
border:1px solid var(--cf-border);
|
||
border-radius:8px;
|
||
padding:8px 10px;
|
||
font-size:0.85rem;
|
||
cursor:pointer;
|
||
}
|
||
|
||
.cfloat-selects select:focus{
|
||
outline:none;
|
||
border-color: var(--cf-accent);
|
||
}
|
||
|
||
/* Title */
|
||
.cfloat-title label{
|
||
display:block;
|
||
font-size:0.7rem;
|
||
font-weight:600;
|
||
text-transform:uppercase;
|
||
letter-spacing:0.05em;
|
||
color: var(--cf-muted);
|
||
margin-bottom:6px;
|
||
}
|
||
|
||
.cfloat-title input{
|
||
width:100%;
|
||
background: var(--cf-input);
|
||
color: var(--cf-text);
|
||
border:1px solid var(--cf-border);
|
||
border-radius:8px;
|
||
padding:10px 12px;
|
||
font-size:0.9rem;
|
||
}
|
||
|
||
.cfloat-title input:focus{
|
||
outline:none;
|
||
border-color: var(--cf-accent);
|
||
}
|
||
|
||
.cfloat-meta{
|
||
display:block;
|
||
margin-top:4px;
|
||
font-size:0.7rem;
|
||
color: var(--cf-accent);
|
||
}
|
||
|
||
.cfloat-error{
|
||
display:block;
|
||
margin-top:4px;
|
||
font-size:0.7rem;
|
||
color:#ef4444;
|
||
}
|
||
|
||
/* Preview - compact */
|
||
.cfloat-preview{
|
||
display:flex;
|
||
align-items:center;
|
||
gap:10px;
|
||
padding:6px;
|
||
}
|
||
|
||
.cfloat-preview img{
|
||
width:60px;
|
||
height:45px;
|
||
object-fit:cover;
|
||
border-radius:6px;
|
||
flex-shrink:0;
|
||
}
|
||
|
||
.cfloat-preview span{
|
||
font-size:0.8rem;
|
||
color: var(--cf-muted);
|
||
overflow:hidden;
|
||
text-overflow:ellipsis;
|
||
white-space:nowrap;
|
||
}
|
||
|
||
/* Description */
|
||
.cfloat-desc label{
|
||
display:block;
|
||
font-size:0.7rem;
|
||
font-weight:600;
|
||
text-transform:uppercase;
|
||
letter-spacing:0.05em;
|
||
color: var(--cf-muted);
|
||
margin-bottom:6px;
|
||
}
|
||
|
||
.cfloat-desc textarea{
|
||
width:100%;
|
||
background: var(--cf-input);
|
||
color: var(--cf-text);
|
||
border:1px solid var(--cf-border);
|
||
border-radius:8px;
|
||
padding:8px 10px;
|
||
font-size:0.85rem;
|
||
resize:none;
|
||
height:60px;
|
||
}
|
||
|
||
.cfloat-desc textarea:focus{
|
||
outline:none;
|
||
border-color: var(--cf-accent);
|
||
}
|
||
|
||
/* Image */
|
||
.cfloat-image{
|
||
padding:6px 10px;
|
||
}
|
||
|
||
.cfloat-img-toggle{
|
||
display:flex;
|
||
gap:6px;
|
||
margin-bottom:8px;
|
||
}
|
||
|
||
.cfloat-img-toggle button{
|
||
flex:1;
|
||
padding:6px 8px;
|
||
border-radius:6px;
|
||
border:1px solid var(--cf-border);
|
||
background:transparent;
|
||
color: var(--cf-muted);
|
||
font-size:0.8rem;
|
||
cursor:pointer;
|
||
transition:all 0.15s;
|
||
}
|
||
|
||
.cfloat-img-toggle button.active{
|
||
background: rgba(255,255,255,0.15);
|
||
border-color: var(--cf-text);
|
||
color: var(--cf-text);
|
||
}
|
||
|
||
.cfloat-img-toggle button i{
|
||
margin-right:3px;
|
||
}
|
||
|
||
.cfloat-img-upload{
|
||
display:flex;
|
||
gap:6px;
|
||
}
|
||
|
||
.cfloat-img-upload label{
|
||
flex:1;
|
||
padding:8px 6px;
|
||
border-radius:6px;
|
||
border:1px dashed var(--cf-border);
|
||
background: var(--cf-input);
|
||
color: var(--cf-muted);
|
||
font-size:0.7rem;
|
||
text-align:center;
|
||
cursor:pointer;
|
||
transition:all 0.15s;
|
||
}
|
||
|
||
.cfloat-img-upload label:hover{
|
||
border-color: var(--cf-accent);
|
||
color: var(--cf-accent);
|
||
}
|
||
|
||
.cfloat-img-upload label i{
|
||
display:block;
|
||
font-size:1rem;
|
||
margin-bottom:2px;
|
||
}
|
||
|
||
/* Gallery thumbnails */
|
||
.cfloat-gallery{
|
||
display:flex;
|
||
flex-wrap:wrap;
|
||
gap:6px;
|
||
margin-top:8px;
|
||
}
|
||
|
||
.cfloat-gallery-item{
|
||
position:relative;
|
||
width:60px;
|
||
height:60px;
|
||
border-radius:8px;
|
||
overflow:hidden;
|
||
border:1px solid var(--cf-border);
|
||
}
|
||
|
||
.cfloat-gallery-item img{
|
||
width:100%;
|
||
height:100%;
|
||
object-fit:cover;
|
||
}
|
||
|
||
.cfloat-gallery-item button{
|
||
position:absolute;
|
||
top:2px;
|
||
right:2px;
|
||
width:20px;
|
||
height:20px;
|
||
border-radius:50%;
|
||
border:none;
|
||
background:rgba(0,0,0,0.6);
|
||
color:#fff;
|
||
font-size:0.65rem;
|
||
cursor:pointer;
|
||
display:flex;
|
||
align-items:center;
|
||
justify-content:center;
|
||
}
|
||
|
||
.cfloat-gallery-item button:hover{
|
||
background:rgba(239,68,68,0.8);
|
||
}
|
||
|
||
/* Error box */
|
||
.cfloat-error-box{
|
||
display:flex;
|
||
align-items:center;
|
||
gap:8px;
|
||
background:rgba(239,68,68,0.15);
|
||
border-color:rgba(239,68,68,0.4);
|
||
color:#fca5a5;
|
||
}
|
||
|
||
.cfloat-error-box i{
|
||
color:#ef4444;
|
||
font-size:0.9rem;
|
||
}
|
||
|
||
.cfloat-error-box span{
|
||
font-size:0.8rem;
|
||
line-height:1.3;
|
||
}
|
||
|
||
/* Navigation */
|
||
.cfloat-nav{
|
||
display:flex;
|
||
gap:8px;
|
||
padding:6px 10px;
|
||
}
|
||
|
||
.cfloat-btn{
|
||
flex:1;
|
||
padding:10px 16px;
|
||
border-radius:8px;
|
||
border:1px solid var(--cf-border);
|
||
background: var(--cf-input);
|
||
color: var(--cf-text);
|
||
font-size:0.85rem;
|
||
font-weight:600;
|
||
cursor:pointer;
|
||
display:flex;
|
||
align-items:center;
|
||
justify-content:center;
|
||
gap:6px;
|
||
transition:all 0.15s;
|
||
}
|
||
|
||
.cfloat-btn:disabled{
|
||
opacity:0.4;
|
||
cursor:not-allowed;
|
||
}
|
||
|
||
.cfloat-btn:hover:not(:disabled){
|
||
border-color: var(--cf-accent);
|
||
}
|
||
|
||
.cfloat-btn-primary{
|
||
background: var(--cf-accent);
|
||
border-color: var(--cf-accent);
|
||
color:#0f172a;
|
||
}
|
||
|
||
.cfloat-btn-primary:hover:not(:disabled){
|
||
filter:brightness(1.1);
|
||
}
|
||
|
||
/* ===== MODE SELECTOR V2 - IMPROVED DESIGN ===== */
|
||
|
||
.mode-selector-backdrop{
|
||
position:fixed;
|
||
inset:0;
|
||
background:rgba(0,0,0,0.5);
|
||
z-index:9998;
|
||
backdrop-filter:blur(4px);
|
||
}
|
||
|
||
.mode-selector-v2{
|
||
--ms-bg: rgba(8,12,24,0.95);
|
||
--ms-glass: rgba(15,23,42,0.85);
|
||
--ms-border: rgba(56,189,248,0.3);
|
||
--ms-text: #f1f5f9;
|
||
--ms-text-muted: #94a3b8;
|
||
--ms-accent: #38bdf8;
|
||
--ms-glow: rgba(56,189,248,0.25);
|
||
|
||
position:absolute;
|
||
left:50%;
|
||
top:50%;
|
||
transform:translate(-50%,-50%);
|
||
pointer-events:auto;
|
||
background: var(--ms-bg);
|
||
backdrop-filter: blur(20px);
|
||
border-radius:18px;
|
||
border:1px solid var(--ms-border);
|
||
box-shadow:
|
||
0 25px 60px rgba(0,0,0,0.5),
|
||
0 0 40px var(--ms-glow);
|
||
padding:1rem;
|
||
min-width:260px;
|
||
z-index:9999;
|
||
}
|
||
|
||
body[data-theme="light"] .mode-selector-v2{
|
||
--ms-bg: rgba(248,250,252,0.97);
|
||
--ms-glass: rgba(255,255,255,0.9);
|
||
--ms-border: rgba(148,163,184,0.5);
|
||
--ms-text: #1e293b;
|
||
--ms-text-muted: #475569;
|
||
--ms-accent: #0ea5e9;
|
||
--ms-glow: rgba(14,165,233,0.15);
|
||
}
|
||
|
||
body[data-theme="blue"] .mode-selector-v2{
|
||
--ms-bg: rgba(15,23,42,0.97);
|
||
--ms-glass: rgba(30,41,59,0.9);
|
||
--ms-border: rgba(71,85,105,0.5);
|
||
--ms-text: #e2e8f0;
|
||
--ms-text-muted: #94a3b8;
|
||
--ms-accent: #60a5fa;
|
||
--ms-glow: rgba(96,165,250,0.15);
|
||
}
|
||
|
||
.mode-selector-v2 .mode-selector-bg{
|
||
display:none;
|
||
}
|
||
|
||
.mode-selector-close{
|
||
position:absolute;
|
||
top:0.6rem;
|
||
right:0.6rem;
|
||
width:28px;
|
||
height:28px;
|
||
border-radius:50%;
|
||
border:1px solid var(--ms-border);
|
||
background: var(--ms-glass);
|
||
color: var(--ms-text-muted);
|
||
font-size:0.9rem;
|
||
display:flex;
|
||
align-items:center;
|
||
justify-content:center;
|
||
cursor:pointer;
|
||
transition:all 0.2s ease;
|
||
z-index:10;
|
||
}
|
||
|
||
.mode-selector-close:hover{
|
||
background:rgba(239,68,68,0.15);
|
||
border-color:rgba(239,68,68,0.5);
|
||
color:#f87171;
|
||
transform:scale(1.05);
|
||
}
|
||
|
||
.mode-selector-title{
|
||
text-align:center;
|
||
font-size:1rem;
|
||
font-weight:700;
|
||
color: var(--ms-text);
|
||
margin-bottom:0.8rem;
|
||
padding-right:1.5rem;
|
||
}
|
||
|
||
.mode-selector-v2 .mode-selector-chips{
|
||
display:flex;
|
||
flex-direction:column;
|
||
gap:0.5rem;
|
||
padding:0;
|
||
}
|
||
|
||
.mode-selector-v2 .mode-selector-chip{
|
||
display:flex;
|
||
align-items:center;
|
||
gap:0.7rem;
|
||
padding:0.7rem 1rem;
|
||
border-radius:12px;
|
||
border:1px solid var(--ms-border);
|
||
background: var(--ms-glass);
|
||
color: var(--ms-text);
|
||
font-size:0.9rem;
|
||
font-weight:500;
|
||
cursor:pointer;
|
||
transition:all 0.2s ease;
|
||
text-align:left;
|
||
}
|
||
|
||
.mode-selector-v2 .mode-selector-chip i{
|
||
font-size:1.1rem;
|
||
width:22px;
|
||
text-align:center;
|
||
color: var(--ms-accent);
|
||
}
|
||
|
||
.mode-selector-v2 .mode-selector-chip:hover{
|
||
border-color: var(--ms-accent);
|
||
transform:translateX(3px);
|
||
}
|
||
|
||
.mode-selector-v2 .mode-selector-chip.is-active{
|
||
background: var(--ms-glow);
|
||
border-color: var(--ms-accent);
|
||
}
|
||
|
||
@media (max-width: 360px){
|
||
.mode-selector-v2{
|
||
min-width:auto;
|
||
width:calc(100vw - 24px);
|
||
padding:0.8rem;
|
||
}
|
||
.mode-selector-v2 .mode-selector-chip{
|
||
padding:0.6rem 0.8rem;
|
||
font-size:0.85rem;
|
||
}
|
||
}
|