1298 lines
26 KiB
CSS
1298 lines
26 KiB
CSS
:root{
|
||
--sw-subcats-nudge: -45px; /* subcats vertical nudge */
|
||
--sw-below-overlap: 40px; /* wall overlaps map a bit */
|
||
}
|
||
|
||
.map-page{
|
||
display:flex;
|
||
flex-direction:column;
|
||
width:100%;
|
||
}
|
||
|
||
/* Map stage first */
|
||
.map-stage{
|
||
position:relative;
|
||
width:100%;
|
||
height: clamp(520px, 72vh, 860px);
|
||
overflow: hidden;
|
||
}
|
||
|
||
/* Landscape: vh is small, reduce min height */
|
||
@media (orientation: landscape){
|
||
:root{ --sw-below-overlap: 22px; }
|
||
.map-stage{ height: clamp(360px, 62vh, 720px); }
|
||
}
|
||
|
||
.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) – pulled up slightly over map */
|
||
.below-stage{
|
||
margin-top: calc(var(--sw-below-overlap) * -1);
|
||
position:relative;
|
||
z-index:25;
|
||
padding: .25rem .7rem 1.0rem;
|
||
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-preview-row{
|
||
display:flex;
|
||
align-items:center;
|
||
gap:.5rem;
|
||
}
|
||
.create-image-preview-row img{
|
||
width:44px;
|
||
height:44px;
|
||
border-radius:8px;
|
||
object-fit:cover;
|
||
border:1px solid rgba(148, 163, 184, 0.5);
|
||
}
|
||
.create-image-preview-row button{
|
||
background:transparent;
|
||
border:1px solid rgba(148, 163, 184, 0.4);
|
||
color:#e2e8f0;
|
||
padding:.2rem .45rem;
|
||
border-radius:999px;
|
||
font-size:.68rem;
|
||
}
|
||
.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:.35rem;
|
||
margin-top:.6rem;
|
||
overflow-x:auto;
|
||
padding-bottom:.25rem;
|
||
}
|
||
.create-gallery-static{
|
||
width:48px;
|
||
height:48px;
|
||
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{
|
||
position:relative;
|
||
overflow:hidden;
|
||
border-radius:18px;
|
||
background:rgba(15,23,42,0.8);
|
||
box-shadow:0 20px 40px rgba(2,6,23,0.45);
|
||
}
|
||
.create-link-preview-tight img{
|
||
width:100%;
|
||
height:200px;
|
||
object-fit:cover;
|
||
display:block;
|
||
border-bottom:1px solid rgba(255,255,255,0.1);
|
||
}
|
||
.create-gallery-overlay{
|
||
position:absolute;
|
||
top:12px;
|
||
right:12px;
|
||
padding-bottom:0;
|
||
background:rgba(15,23,42,0.35);
|
||
border-radius:999px;
|
||
}
|
||
.create-gallery-overlay .create-gallery-item{
|
||
width:40px;
|
||
height:40px;
|
||
}
|
||
.create-gallery-overlay .create-gallery-remove{
|
||
top:-4px;
|
||
right:-4px;
|
||
width:18px;
|
||
height:18px;
|
||
font-size:10px;
|
||
}
|
||
.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{
|
||
display:flex;
|
||
align-items:center;
|
||
gap:.65rem;
|
||
padding:.45rem .6rem;
|
||
border-radius:12px;
|
||
border:1px solid rgba(148, 163, 184, 0.35);
|
||
background:rgba(15, 23, 42, 0.55);
|
||
margin-bottom:.6rem;
|
||
}
|
||
.create-link-preview img{
|
||
width:58px;
|
||
height:58px;
|
||
border-radius:10px;
|
||
object-fit:cover;
|
||
border:1px solid rgba(148, 163, 184, 0.5);
|
||
}
|
||
.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;
|
||
}
|