PluginProbe
WPVR – 360 Panorama viewer and Virtual Tour Builder for WordPress / 8.5.71
WPVR – 360 Panorama viewer and Virtual Tour Builder for WordPress v8.5.71
9.1.2 9.1.1 9.1.0 9.0.3 9.0.2 9.0.1 9.0.0 8.5.79 8.5.78 8.5.77 8.5.76 8.5.75 8.5.74 8.5.73 8.5.72 8.5.71 8.5.70 8.5.69 8.5.68 8.5.35 8.5.36 8.5.37 8.5.38 8.5.39 8.5.4 All 221 releases
wpvr / admin / css / setup-wizard.css

setup-wizard.css in WPVR – 360 Panorama viewer and Virtual Tour Builder for WordPress 8.5.71, at admin/css/setup-wizard.css

2,263 lines 42.5 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 :root {
2 --wpvr-primary: #6C63FF;
3 --wpvr-green: #239654;
4 --wpvr-white: #ffffff;
5 --wpvr-text-dark: #333333;
6 --wpvr-text-light: #6c757d;
7 --wpvr-border: #e0e0e0;
8 }
9
10 * {
11 box-sizing: border-box;
12 margin: 0;
13 padding: 0;
14 }
15
16 body {
17 font-family: 'Roboto', sans-serif;
18 color: var(--wpvr-text-dark);
19 background: #f6f4ff;
20 overflow-x: hidden;
21 }
22
23 #onboarding-app {
24 display: flex;
25 flex-direction: column;
26 min-height: 100vh;
27 align-items: center;
28 position: relative;
29 }
30
31 /* Steps Container - 1170px white container with sidebar and content */
32 .steps-container {
33 display: none;
34 width: 100%;
35 max-width: 1170px;
36 background: var(--wpvr-white);
37 border-radius: 8px;
38 box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
39 margin: 40px auto;
40 /* min-height: calc(100vh - 80px); */
41 position: relative;
42 }
43
44 #onboarding-app.sidebar-visible .steps-container {
45 display: flex;
46 }
47
48 #onboarding-app.sidebar-visible .main-content-welcome {
49 display: none;
50 }
51
52 /* Sidebar Styles */
53 .sidebar {
54 width: 280px;
55 background: #FBFAFF;
56 padding: 30px 20px;
57 display: flex;
58 flex-direction: column;
59 position: relative;
60 flex-shrink: 0;
61 border-right: 1px solid #E5E5E5;
62 }
63
64 /* Vertical border - not full height */
65 .sidebar::after {
66 content: '';
67 position: absolute;
68 right: 0;
69 top: 10%;
70 bottom: 15%;
71 width: 1px;
72 }
73
74 .logo {
75 margin-bottom: 40px;
76 padding: 20px 20px 20px 20px;
77 margin-left: -20px;
78 margin-right: -20px;
79 border-bottom: 1px solid #E5E5E5;
80 text-align: center;
81 }
82
83 .logo-img {
84 max-width: 180px;
85 height: auto;
86 display: inline-block;
87 }
88
89 .logo span {
90 color: var(--wpvr-primary);
91 }
92
93 .nav-steps {
94 flex: 1;
95 padding-right: 30px;
96 padding-left: 50px;
97 }
98
99 .nav-item {
100 display: flex;
101 align-items: center;
102 gap: 12px;
103 padding: 15px 0;
104 color: #76708c;
105 font-size: 16px;
106 font-weight: 400;
107 cursor: pointer;
108 transition: all 0.2s;
109 border-radius: 8px;
110 }
111
112 .nav-item::before {
113 content: attr(data-number);
114 display: flex;
115 align-items: center;
116 justify-content: center;
117 width: 24px;
118 height: 24px;
119 border: 2px solid var(--wpvr-text-light);
120 border-radius: 50%;
121 margin-right: 12px;
122 color: var(--wpvr-text-light);
123 font-size: 13px;
124 font-weight: 600;
125 flex-shrink: 0;
126 transition: all 0.3s ease;
127 }
128
129 .nav-item.active {
130 color: #3f04fe;
131 font-weight: 500;
132 background: #FFFFFF;
133 padding: 9px 11px;
134 border-radius: 40px;
135 margin-left: -15px;
136 width: 200px;
137 height: 42px;
138 border: 1px solid #F1EEFF;
139 gap: 10px;
140 }
141
142 .nav-item.active::before {
143 background-color: var(--wpvr-primary);
144 color: var(--wpvr-white);
145 border-color: var(--wpvr-primary);
146 }
147
148 .nav-item.completed {
149 color: var(--wpvr-green);
150 }
151
152 /* .nav-item.completed::before {
153 content: '✓';
154 background-color: var(--wpvr-green);
155 color: var(--wpvr-white);
156 border-color: var(--wpvr-green);
157 } */
158
159
160 .nav-item.completed::before {
161 content: '';
162 display: inline-block;
163 width: 20px;
164 height: 20px;
165 background-color: var(--wpvr-green);
166 border-color: var(--wpvr-green);
167
168 /* SVG as data URI */
169 background-image: url("data:image/svg+xml,%3Csvg width='11' height='7' viewBox='0 0 11 7' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M9.86765 0.315308C9.55824 0.0282706 9.05582 0.0284515 8.74601 0.315308L3.69788 4.9925L1.4542 2.91379C1.14438 2.62675 0.64218 2.62675 0.332366 2.91379C0.0225527 3.20082 0.0225527 3.66611 0.332366 3.95314L3.13684 6.55144C3.29165 6.69487 3.49465 6.76676 3.69766 6.76676C3.90067 6.76676 4.10386 6.69505 4.25867 6.55144L9.86765 1.35465C10.1775 1.06781 10.1775 0.602326 9.86765 0.315308Z' fill='white'/%3E%3C/svg%3E");
170
171 background-repeat: no-repeat;
172 background-position: center;
173 background-size: auto;
174 }
175
176
177 .nav-item.completed .nav-text {
178 color: #6D667D;
179 }
180
181 .version-tag {
182 margin-top: auto;
183 font-size: 12px;
184 color: #9CA3AF;
185 line-height: 1.5;
186 text-align: center;
187 padding-top: 20px;
188 border-top: 1px solid var(--wpvr-border);
189 }
190
191 /* Main Content */
192 .main-content {
193 flex: 1;
194 overflow-y: auto;
195 }
196
197 .main-content-welcome {
198 width: 100%;
199 display: flex;
200 justify-content: center;
201 align-items: center;
202 padding: 40px;
203 }
204
205 .main-content-steps {
206 /* padding: 40px; */
207
208 padding: 40px 40px 0;
209 position: relative;
210 }
211
212 .step {
213 display: none;
214 opacity: 0;
215 animation: fadeIn 0.3s ease-in-out;
216 }
217
218 .step:not(#step-welcome) {
219 padding: 0;
220 }
221
222 .step.active {
223 display: block;
224 opacity: 1;
225 }
226
227 .step.full-width {
228 padding: 0;
229 max-width: none;
230 width: 100%;
231 }
232
233 .step-indicator {
234 font-size: 12px;
235 font-weight: 600;
236 color: var(--wpvr-text-light);
237 letter-spacing: 1px;
238 margin-bottom: 30px;
239 }
240
241 .step-indicator.centered {
242 font-weight: 400;
243 font-size: 14px;
244 line-height: 15.6px;
245 letter-spacing: 2px;
246 text-align: center;
247 text-transform: uppercase;
248 color: #6D667D;
249 }
250
251 @keyframes fadeIn {
252 from {
253 opacity: 0;
254 }
255
256 to {
257 opacity: 1;
258 }
259 }
260
261 /* Welcome Step */
262 .step#step-welcome {
263 padding: 0;
264 display: flex;
265 align-items: center;
266 justify-content: center;
267 background-color: transparent;
268 }
269
270 .step#step-welcome .welcome-container {
271 background: var(--wpvr-white);
272 border-radius: 8px;
273 box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
274 max-width: 960px;
275 width: 100%;
276 overflow: hidden;
277 }
278
279 .step#step-welcome .welcome-top {
280 padding: 60px 40px;
281 display: flex;
282 flex-direction: column;
283 align-items: center;
284 justify-content: center;
285 text-align: center;
286 border-bottom: 1px solid #e8e8f0;
287 }
288
289 .step#step-welcome .welcome-bottom {
290 padding: 81px 40px;
291 display: flex;
292 flex-direction: column;
293 align-items: center;
294 justify-content: center;
295 background: #fbfaff;
296 }
297
298 .step#step-welcome .consent-label {
299 display: flex;
300 align-items: center;
301 gap: 10px;
302 margin-top: 50px;
303 font-size: 13px;
304 color: var(--wpvr-text-light);
305 cursor: pointer;
306 }
307
308 .step#step-welcome .consent-label input[type="checkbox"] {
309 width: 16px;
310 height: 16px;
311 accent-color: var(--wpvr-primary);
312 cursor: pointer;
313 }
314
315 .step#step-welcome .consent-label span {
316 line-height: 1.4;
317 }
318
319 .step#step-welcome .logo-img {
320 width: 120px;
321 height: auto;
322 margin-bottom: 30px;
323 }
324
325 .step#step-welcome .step-label {
326 font-size: 14px;
327 font-weight: 400;
328 line-height: 15.6px;
329 color: #6D667D;
330 letter-spacing: 2px;
331 text-align: center;
332 text-transform: uppercase;
333 margin-bottom: 20px;
334 display: block;
335 }
336
337 .step#step-welcome .hero-title {
338 font-size: 32px;
339 font-weight: 600;
340 color: #3F04FE;
341 margin-bottom: 7px;
342 line-height: 80px;
343 letter-spacing: 0%;
344 text-align: center;
345 }
346
347 .step#step-welcome .hero-sub {
348 font-weight: 400;
349 font-size: 16px;
350 line-height: 30px;
351 letter-spacing: 0%;
352 text-align: center;
353 color: #6D667D;
354 margin-bottom: 40px;
355 }
356
357 .step#step-welcome .welcome-checklist {
358 display: flex;
359 flex-direction: row;
360 gap: 40px;
361 align-items: center;
362 justify-content: center;
363 margin-bottom: 0;
364 list-style: none;
365 }
366
367 .step#step-welcome .welcome-checklist li {
368 display: flex;
369 align-items: center;
370 gap: 12px;
371 font-size: 15px;
372 color: var(--wpvr-text-dark);
373 }
374
375 .step#step-welcome .welcome-checklist li span {
376 font-weight: 500;
377 font-size: 16px;
378 line-height: 30px;
379 letter-spacing: 0%;
380 color: #0E003C;
381 }
382
383 .step#step-welcome .welcome-checklist li svg {
384 flex-shrink: 0;
385 }
386
387 .step#step-welcome .btn-primary {
388 height: 60px;
389 padding: 16px 35px;
390 display: flex;
391 align-items: center;
392 justify-content: center;
393 gap: 10px;
394 background-color: #3F04FE;
395 color: #FFFFFF;
396 font-weight: 500;
397 font-size: 18px;
398 line-height: 28px;
399 letter-spacing: 2%;
400 border: none;
401 cursor: pointer;
402 transition: all 0.3s ease;
403 }
404
405 .step#step-welcome .btn-primary:hover {
406 background-color: #5a52d5;
407 transform: translateY(-2px);
408 box-shadow: 0 6px 20px rgba(108, 99, 255, 0.3);
409 }
410
411 .step#step-welcome .upload-link {
412 font-size: 14px;
413 color: var(--wpvr-text-light);
414 text-decoration: underline;
415 cursor: pointer;
416 margin-top: 16px;
417 display: inline-block;
418 }
419
420 .step#step-welcome .upload-link:hover {
421 color: var(--wpvr-primary);
422 }
423
424 /* Steps 2-5: Layout within white container */
425 .step:not(#step-welcome) {
426 background: transparent;
427 max-width: none;
428 margin: 0;
429 /* padding: 20px 0; */
430 border-radius: 0;
431 box-shadow: none;
432 }
433
434 /* Section Title and Sub */
435 .section-title {
436 font-size: 32px;
437 font-weight: 600;
438 color: #3F04FE;
439 margin-bottom: 7px;
440 line-height: 80px;
441 letter-spacing: 0%;
442 text-align: center;
443 }
444
445 .section-sub {
446 font-weight: 400;
447 font-size: 16px;
448 line-height: 30px;
449 letter-spacing: 0%;
450 text-align: center;
451 color: #6D667D;
452 padding-bottom: 25px;
453 }
454
455 /* UI Components */
456 .btn-primary {
457 height: 50px;
458 padding: 11px 26px;
459 display: flex;
460 align-items: center;
461 justify-content: center;
462 gap: 10px;
463 background: #3F04FE;
464 color: #FFFFFF;
465 font-weight: 500;
466 font-size: 18px;
467 line-height: 28px;
468 letter-spacing: 2%;
469 border: none;
470 opacity: 1;
471 cursor: pointer;
472 transition: all 0.3s ease;
473 }
474
475 .btn-primary:hover {
476 background-color: #5a52d5;
477 transform: translateY(-2px);
478 box-shadow: 0 6px 20px rgba(108, 99, 255, 0.3);
479 }
480
481 .btn-primary.is-loading {
482 position: relative;
483 pointer-events: none;
484 opacity: 0.95;
485 padding-left: 46px;
486 }
487
488 .btn-primary.is-loading::before,
489 .btn-primary-outline.is-loading::before,
490 .next-btn.is-loading::before {
491 content: '';
492 position: absolute;
493 left: 15px;
494 top: 50%;
495 width: 16px;
496 height: 16px;
497 margin-top: -8px;
498 border: 2px solid rgba(255, 255, 255, 0.45);
499 border-top-color: #fff;
500 border-radius: 50%;
501 animation: wpvrSpin 0.8s linear infinite;
502 }
503
504 @keyframes wpvrSpin {
505 to {
506 transform: rotate(360deg);
507 }
508 }
509
510 .btn-primary-outline {
511 height: 50px;
512 padding: 11px 26px;
513 display: flex;
514 align-items: center;
515 justify-content: center;
516 gap: 10px;
517 background: #3F04FE;
518 color: #FFFFFF;
519 font-weight: 500;
520 font-size: 18px;
521 line-height: 28px;
522 letter-spacing: 2%;
523 border: none;
524 opacity: 1;
525 cursor: pointer;
526 transition: all 0.3s ease;
527 }
528
529 .btn-primary-outline:hover {
530 background-color: var(--wpvr-primary);
531 color: var(--wpvr-white);
532 transform: translateY(-2px);
533 box-shadow: 0 6px 20px rgba(108, 99, 255, 0.3);
534 }
535
536 /* Cards */
537 .vertical-selection-grid {
538 display: grid;
539 grid-template-columns: repeat(3, 1fr);
540 gap: 0;
541 margin-bottom: 40px;
542 max-height: none;
543 overflow-y: visible;
544 padding: 1px 0 0 1px;
545 max-width: 690px;
546 margin-left: auto;
547 margin-right: auto;
548 }
549
550 @media (min-width: 2000px) {
551 .vertical-selection-grid {
552 grid-template-columns: repeat(4, 1fr);
553 }
554 }
555
556 .v-card {
557 width: calc(100% + 1px);
558 height: 161px;
559 padding: 20px 16px;
560 border: 1px solid var(--wpvr-border);
561 border-radius: 0;
562 text-align: center;
563 cursor: pointer;
564 transition: all 0.3s ease;
565 display: flex;
566 flex-direction: column;
567 align-items: center;
568 justify-content: center;
569 margin: -1px 0 0 -1px;
570 }
571
572 .v-card:hover {
573 border-color: var(--wpvr-primary);
574 transform: none;
575 box-shadow: none;
576 z-index: 1;
577 }
578
579 .v-card.active {
580 background: var(--wpvr-primary);
581 color: white;
582 border-color: var(--wpvr-primary);
583 z-index: 2;
584 }
585
586 .v-card h3 {
587 font-weight: 500;
588 font-size: 16px;
589 line-height: 100%;
590 letter-spacing: -1%;
591 color: #76708C;
592 margin: 27px 0 0 0;
593 }
594
595 .v-card.active h3 {
596 color: white;
597 }
598
599 .v-card p {
600 font-size: 13px;
601 color: var(--wpvr-text-light);
602 margin: 8px 0 0 0;
603 line-height: 1.4;
604 display: none;
605 }
606
607 .v-card.active p {
608 color: rgba(255, 255, 255, 0.8);
609 display: none;
610 }
611
612 .v-icon {
613 font-size: 36px;
614 margin-bottom: 0;
615 line-height: 1;
616 }
617
618 /* Footer */
619 .onboarding-footer {
620 display: flex;
621 justify-content: space-between;
622 align-items: center;
623 padding: 10px 40px;
624 margin: 0 -40px;
625 background: #FBFAFF;
626 border-top: 1px solid #ede9ff;
627 }
628
629 .template-footer {
630 /* Only back button, no justify-content space-between needed visually, but flex is fine */
631 }
632
633 .footer-right {
634 display: flex;
635 gap: 16px;
636 align-items: center;
637 }
638
639 .btn-back {
640 background: transparent;
641 border: none;
642 color: #6D667D;
643 font-size: 14px;
644 font-weight: 500;
645 line-height: 1;
646 letter-spacing: 0;
647 cursor: pointer;
648 transition: color 0.3s ease;
649 display: flex;
650 align-items: center;
651 gap: 8px;
652 height: auto;
653 padding: 8px 12px;
654 }
655
656 .btn-back svg {
657 flex-shrink: 0;
658 }
659
660 .btn-back:hover {
661 color: var(--wpvr-primary);
662 }
663
664 .btn-back:hover svg path {
665 stroke: var(--wpvr-primary);
666 }
667
668 /* Next Button - Primary filled style */
669 .next-btn,
670 .btn-primary-outline.next-btn {
671 height: auto;
672 padding: 10px 28px;
673 display: flex;
674 align-items: center;
675 justify-content: center;
676 gap: 10px;
677 background: #3F04FE;
678 color: #FFFFFF;
679 font-weight: 500;
680 font-size: 15px;
681 line-height: 1.4;
682 border: none;
683 border-radius: 6px;
684 opacity: 1;
685 cursor: pointer;
686 transition: all 0.3s ease;
687 }
688
689 .next-btn:hover,
690 .btn-primary-outline.next-btn:hover {
691 background-color: #5a52d5;
692 border-color: #5a52d5;
693 color: var(--wpvr-white);
694 }
695
696 /* Next Button Disabled State */
697 .next-btn:disabled,
698 .next-btn.disabled,
699 .btn-primary-outline.next-btn:disabled {
700 background-color: #ccc;
701 border-color: #ccc;
702 color: #999;
703 cursor: not-allowed;
704 transform: none;
705 box-shadow: none;
706 }
707
708 /* Publish Button - No fixed width */
709 #publish-btn {
710 width: auto;
711 }
712
713 /* Skip Button - Outside white container, aligned with right edge */
714 .btn-skip {
715 position: absolute;
716 top: -30px;
717 right: -13px;
718 background: transparent;
719 border: none;
720 font-weight: 400;
721 font-style: normal;
722 font-size: 14px;
723 line-height: 30px;
724 letter-spacing: 0%;
725 text-align: right;
726 color: #6D667D;
727 cursor: pointer;
728 z-index: 1000;
729 padding: 0px 14px;
730 transition: color 0.3s ease;
731 }
732
733 .btn-skip:hover {
734 color: var(--wpvr-primary);
735 }
736
737 /* Template Container Styles */
738 .template-container {
739 display: flex;
740 flex-direction: column;
741 align-items: center;
742 gap: 20px;
743 padding-bottom: 102px;
744 }
745
746 .template-preview-box {
747 width: 100%;
748 max-width: 800px;
749 background: #f0eeff;
750 border-radius: 16px;
751 padding: 60px 40px;
752 display: flex;
753 align-items: center;
754 justify-content: center;
755 }
756
757 .template-preview-content {
758 display: flex;
759 flex-direction: column;
760 align-items: center;
761 text-align: center;
762 gap: 16px;
763 }
764
765 .icon-placeholder {
766 font-size: 64px;
767 margin-bottom: 10px;
768 }
769
770 .template-preview-info {
771 display: flex;
772 flex-direction: column;
773 gap: 8px;
774 }
775
776 .template-preview-title {
777 font-size: 20px;
778 font-weight: 700;
779 color: var(--wpvr-text-dark);
780 }
781
782 .template-preview-desc {
783 font-size: 14px;
784 color: var(--wpvr-text-light);
785 max-width: 400px;
786 }
787
788 .template-actions {
789 display: flex;
790 flex-direction: column;
791 align-items: center;
792 gap: 16px;
793 margin-top: 20px;
794 }
795
796 #use-template-btn {
797 height: 60px;
798 border: 1px solid #3F04FE;
799 border-radius: 10px;
800 opacity: 1;
801 background-color: transparent;
802 color: #3F04FE;
803 font-size: 14px;
804 font-weight: 600;
805 letter-spacing: 1px;
806 cursor: pointer;
807 transition: all 0.3s ease;
808 display: flex;
809 align-items: center;
810 justify-content: center;
811 }
812
813 #use-template-btn:hover {
814 background-color: #3F04FE;
815 color: #ffffff;
816 }
817
818 .upload-link {
819 font-size: 14px;
820 font-weight: 600;
821 color: var(--wpvr-primary);
822 text-decoration: none;
823 text-transform: uppercase;
824 letter-spacing: 1px;
825 cursor: pointer;
826 }
827
828 .upload-link:hover {
829 text-decoration: underline;
830 }
831
832 /* Upload/Drop Zone Styles */
833 .upload-section {
834 width: 692px;
835 display: flex;
836 flex-direction: column;
837 align-items: center;
838 }
839
840 .upload-section-label {
841 font-weight: 500;
842 font-style: normal;
843 font-size: 16px;
844 line-height: 22px;
845 letter-spacing: -0.01em;
846 text-align: center;
847 color: #333333;
848 cursor: pointer;
849 margin-top: 8px;
850 }
851
852 .drop-zone {
853 background: #ffffff;
854 border: 1px dashed #6D667D;
855 border-radius: 10px;
856 width: 100%;
857 height: 299px;
858 display: flex;
859 align-items: center;
860 justify-content: center;
861 cursor: pointer;
862 transition: all 0.3s ease;
863 opacity: 1;
864 }
865
866 .drop-zone:hover {
867 background: #f8f8ff;
868 border-color: #5a52d5;
869 }
870
871 .drop-zone-content {
872 display: flex;
873 flex-direction: column;
874 align-items: center;
875 text-align: center;
876 gap: 12px;
877 }
878
879 .drop-zone-text {
880 font-weight: 400;
881 font-style: normal;
882 font-size: 14px;
883 line-height: 28px;
884 letter-spacing: 0%;
885 text-align: center;
886 color: #6D667D;
887 }
888
889 .drop-zone-link {
890 font-weight: 600;
891 font-style: normal;
892 font-size: 14px;
893 line-height: 28px;
894 letter-spacing: 0%;
895 text-align: center;
896 text-decoration: underline;
897 text-decoration-style: solid;
898 text-underline-offset: 4px;
899 text-decoration-thickness: 1px;
900 text-decoration-skip-ink: auto;
901 color: #3F04FE;
902 cursor: pointer;
903 }
904
905 .drop-zone-hint {
906 font-size: 13px;
907 color: var(--wpvr-text-light);
908 }
909
910 /* Upload Preview */
911 .upload-preview {
912 width: 100%;
913 }
914
915 .upload-preview-content {
916 display: flex;
917 align-items: center;
918 gap: 16px;
919 padding: 20px;
920 background: #f8f8ff;
921 border-radius: 8px;
922 border: 1px solid var(--wpvr-border);
923 }
924
925 .upload-preview-content img {
926 width: 80px;
927 height: 60px;
928 object-fit: cover;
929 border-radius: 4px;
930 }
931
932 .upload-preview-info {
933 display: flex;
934 flex-direction: column;
935 align-items: flex-start;
936 gap: 8px;
937 text-align: left;
938 }
939
940 .upload-preview-name {
941 font-size: 14px;
942 font-weight: 500;
943 color: var(--wpvr-text-dark);
944 text-align: left;
945 }
946
947 .btn-remove-upload {
948 background: transparent;
949 border: none;
950 color: #dc3545;
951 font-size: 13px;
952 cursor: pointer;
953 padding: 0;
954 text-align: left;
955 }
956
957 .btn-remove-upload:hover {
958 text-decoration: underline;
959 }
960
961 /* Tour Preview Window */
962 .tour-preview-window {
963 width: 100%;
964 max-width: 900px;
965 margin: 0 auto 30px;
966 border-radius: 12px;
967 overflow: hidden;
968 box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
969 }
970
971 /* Shortcode Instructions Section */
972 .shortcode-instructions {
973 width: 692px;
974 margin: 10px auto;
975 padding: 24px;
976 background: #E8E1FF;
977 border: 1px solid #E8E1FF;
978 border-radius: 10px;
979 text-align: left;
980 }
981
982 .shortcode-icon {
983 font-size: 24px;
984 margin-bottom: 12px;
985 }
986
987 .shortcode-title {
988 margin: 0 0 8px 0;
989 font-size: 18px;
990 font-weight: 600;
991 letter-spacing: 0;
992 color: #333333;
993 }
994
995 .shortcode-description {
996 margin: 0 0 16px 0;
997 font-size: 15px;
998 color: #6d667d;
999 line-height: 1.5;
1000 }
1001
1002 .shortcode-box {
1003 display: flex;
1004 align-items: center;
1005 justify-content: space-between;
1006 gap: 16px;
1007 padding: 16px 20px;
1008 background: #FFFFFF;
1009 border: 1px solid #E0E0E0;
1010 border-radius: 8px;
1011 }
1012
1013 .shortcode-code {
1014 flex: 1;
1015 font-size: 16px;
1016 font-weight: 600;
1017 line-height: 100%;
1018 letter-spacing: -0.01em;
1019 color: #3F04FE;
1020 user-select: all;
1021 }
1022
1023 .btn-copy-shortcode {
1024 width: 167px;
1025 height: 40px;
1026 padding: 0;
1027 background: #E8E1FF;
1028 border: 1px solid #E8E1FF;
1029 border-radius: 3px;
1030 font-size: 16px;
1031 font-weight: 500;
1032 line-height: 28px;
1033 letter-spacing: 0.02em;
1034 text-align: center;
1035 color: #333333;
1036 cursor: pointer;
1037 white-space: nowrap;
1038 transition: all 0.2s ease;
1039 opacity: 1;
1040 }
1041
1042 .btn-copy-shortcode:hover {
1043 background: #F9F7FF;
1044 border-color: #3F04FE;
1045 }
1046
1047 .btn-copy-shortcode:active {
1048 transform: scale(0.98);
1049 }
1050
1051 /* Edit Tour Button */
1052 .edit-tour-container {
1053 text-align: right;
1054 margin: 0 auto 16px;
1055 width: 692px;
1056 max-width: 100%;
1057 padding-top: 8px;
1058 padding-bottom: 0;
1059 }
1060
1061 .btn-edit-tour {
1062 display: inline-block;
1063 background-color: #ffffff;
1064 color: #3F04FE;
1065 font-weight: 500;
1066 font-size: 16px;
1067 line-height: 22px;
1068 letter-spacing: -0.01em;
1069 text-align: center;
1070 border-radius: 8px;
1071 cursor: pointer;
1072 transition: all 0.2s ease;
1073 }
1074
1075 .btn-edit-tour:hover {
1076 background-color: #f8f6ff;
1077 transform: translateY(-1px);
1078 }
1079
1080 /* Go to Listing Button - Success Step */
1081 #step-success .footer-right .btn-primary-outline {
1082 background: #3F04FE;
1083 color: #ffffff;
1084 border-color: #3F04FE;
1085 }
1086
1087 #step-success .footer-right .btn-primary-outline:hover {
1088 background: #5a52d5;
1089 border-color: #5a52d5;
1090 color: #ffffff;
1091 }
1092
1093 #panorama-container,
1094 .image-placeholder {
1095 width: 100%;
1096 height: 450px;
1097 background: #f0eeff;
1098 position: relative;
1099 }
1100
1101 #panorama {
1102 width: 100%;
1103 height: 100%;
1104 }
1105
1106 .preview-controls {
1107 position: absolute;
1108 bottom: 12px;
1109 left: 12px;
1110 display: flex;
1111 gap: 16px;
1112 background: rgba(255, 255, 255, 0.9);
1113 padding: 8px 14px;
1114 border-radius: 6px;
1115 box-shadow: 0 1px 6px rgba(0, 0, 0, 0.08);
1116 }
1117
1118 .preview-controls span {
1119 font-size: 11px;
1120 color: var(--wpvr-text-dark);
1121 display: flex;
1122 align-items: center;
1123 gap: 4px;
1124 }
1125
1126 /* Hotspot Modal Styles */
1127 .hotspot-modal {
1128 position: fixed;
1129 top: 0;
1130 left: 0;
1131 width: 100%;
1132 height: 100%;
1133 background: rgba(0, 0, 0, 0.5);
1134 display: flex;
1135 align-items: center;
1136 justify-content: center;
1137 z-index: 10000;
1138 }
1139
1140 .hotspot-modal-content {
1141 background: var(--wpvr-white);
1142 border-radius: 12px;
1143 box-shadow: 0 10px 40px rgba(0, 0, 0, 0.2);
1144 width: 100%;
1145 max-width: 450px;
1146 overflow: hidden;
1147 animation: modalFadeIn 0.2s ease-out;
1148 }
1149
1150 @keyframes modalFadeIn {
1151 from {
1152 opacity: 0;
1153 transform: translateY(-20px) scale(0.95);
1154 }
1155
1156 to {
1157 opacity: 1;
1158 transform: translateY(0) scale(1);
1159 }
1160 }
1161
1162 .hotspot-modal-header {
1163 display: flex;
1164 align-items: center;
1165 justify-content: space-between;
1166 padding: 20px 24px;
1167 border-bottom: 1px solid var(--wpvr-border);
1168 }
1169
1170 .hotspot-modal-header h3 {
1171 margin: 0;
1172 font-size: 18px;
1173 font-weight: 600;
1174 color: var(--wpvr-text-dark);
1175 }
1176
1177 .hotspot-modal-close {
1178 background: none;
1179 border: none;
1180 font-size: 24px;
1181 color: var(--wpvr-text-light);
1182 cursor: pointer;
1183 padding: 0;
1184 line-height: 1;
1185 transition: color 0.2s ease;
1186 }
1187
1188 .hotspot-modal-close:hover {
1189 color: var(--wpvr-text-dark);
1190 }
1191
1192 .hotspot-modal-body {
1193 padding: 24px;
1194 }
1195
1196 .hotspot-modal-body label {
1197 display: block;
1198 font-size: 14px;
1199 font-weight: 500;
1200 color: var(--wpvr-text-dark);
1201 margin-bottom: 8px;
1202 }
1203
1204 .hotspot-modal-body input[type="text"] {
1205 width: 100%;
1206 padding: 12px 14px;
1207 font-size: 14px;
1208 border: 1px solid var(--wpvr-border);
1209 border-radius: 6px;
1210 outline: none;
1211 transition: border-color 0.2s ease, box-shadow 0.2s ease;
1212 }
1213
1214 .hotspot-modal-body input[type="text"]:focus {
1215 border-color: var(--wpvr-primary);
1216 box-shadow: 0 0 0 3px rgba(108, 99, 255, 0.1);
1217 }
1218
1219 .hotspot-modal-body input[type="text"]::placeholder {
1220 color: var(--wpvr-text-light);
1221 }
1222
1223 .hotspot-modal-actions {
1224 display: flex;
1225 gap: 12px;
1226 margin-top: 24px;
1227 justify-content: flex-end;
1228 }
1229
1230 .hotspot-modal-actions .btn-secondary {
1231 background: transparent;
1232 color: var(--wpvr-text-light);
1233 border: 1px solid var(--wpvr-border);
1234 padding: 10px 20px;
1235 font-size: 14px;
1236 font-weight: 500;
1237 border-radius: 6px;
1238 cursor: pointer;
1239 transition: all 0.2s ease;
1240 }
1241
1242 .hotspot-modal-actions .btn-secondary:hover {
1243 background: #f5f5f5;
1244 color: var(--wpvr-text-dark);
1245 }
1246
1247 .hotspot-modal-actions .btn-primary {
1248 background: var(--wpvr-primary);
1249 color: var(--wpvr-white);
1250 border: none;
1251 padding: 10px 20px;
1252 font-size: 14px;
1253 font-weight: 500;
1254 border-radius: 6px;
1255 cursor: pointer;
1256 transition: all 0.2s ease;
1257 }
1258
1259 .hotspot-modal-actions .btn-primary:hover {
1260 background: #5a52d5;
1261 transform: translateY(-1px);
1262 box-shadow: 0 4px 12px rgba(108, 99, 255, 0.3);
1263 }
1264
1265 /* ========================================
1266 HOTSPOT LIST
1267 ======================================== */
1268
1269 .hotspot-list {
1270 margin-top: 16px;
1271 padding-bottom: 10px;
1272 }
1273
1274 .hotspot-list-label {
1275 font-size: 12px;
1276 font-weight: 600;
1277 color: var(--wpvr-text-light);
1278 letter-spacing: 0.5px;
1279 text-transform: uppercase;
1280 margin-bottom: 8px;
1281 }
1282
1283 .hotspot-items {
1284 list-style: none;
1285 margin: 0;
1286 padding: 0;
1287 display: flex;
1288 flex-direction: row;
1289 flex-wrap: wrap;
1290 gap: 8px;
1291 }
1292
1293 .hotspot-item {
1294 display: inline-flex;
1295 align-items: center;
1296 background: #f8f7ff;
1297 border: 1px solid #e8e4fd;
1298 border-radius: 20px;
1299 padding: 5px 10px 5px 12px;
1300 font-size: 13px;
1301 color: var(--wpvr-text-dark);
1302 white-space: nowrap;
1303 }
1304
1305 .hotspot-item-text {
1306 white-space: nowrap;
1307 }
1308
1309 .hotspot-item-remove {
1310 flex-shrink: 0;
1311 margin-left: 8px;
1312 background: none;
1313 border: none;
1314 color: #9ca3af;
1315 font-size: 18px;
1316 line-height: 1;
1317 cursor: pointer;
1318 padding: 0 4px;
1319 border-radius: 4px;
1320 transition: color 0.15s ease, background 0.15s ease;
1321 }
1322
1323 .hotspot-item-remove:hover {
1324 color: #ef4444;
1325 background: #fee2e2;
1326 }
1327
1328 /* ========================================
1329 PREMIUM POPUP — wizard-page override
1330 (the popup is fixed but the wizard has no
1331 WP admin sidebar, so use full viewport width)
1332 ======================================== */
1333
1334 #wpvr_premium_feature_popup.wpvr-premium-feature {
1335 width: 100%;
1336 top: 0;
1337 left: 0;
1338 right: 0;
1339 z-index: 100000;
1340 }
1341
1342 #wpvr_premium_feature_popup .wpvr-premium-feature__subheading {
1343 max-width: 485px;
1344 padding: 0 30px;
1345 }
1346
1347 #wpvr_premium_feature_popup .wpvr-premium-feature__wrapper {
1348 max-width: 580px;
1349 }
1350
1351 #wpvr_premium_feature_popup .wpvr-premium-feature__subheading p {
1352 margin: 0 0 8px;
1353 }
1354
1355 #wpvr_premium_feature_popup .wpvr-premium-feature__subheading p:last-child {
1356 margin-bottom: 0;
1357 }
1358
1359 @media (max-width: 640px) {
1360 #wpvr_premium_feature_popup.wpvr-premium-feature {
1361 padding: 10px;
1362 align-items: flex-start;
1363 overflow-y: auto;
1364 }
1365
1366 #wpvr_premium_feature_popup .wpvr-premium-feature__wrapper {
1367 max-width: 100%;
1368 margin-top: 20px;
1369 }
1370
1371 #wpvr_premium_feature_popup .wpvr-premium-feature__body {
1372 padding: 24px 16px;
1373 }
1374
1375 #wpvr_premium_feature_popup .wpvr-premium-feature__subheading {
1376 max-width: 100%;
1377 padding: 0 10px;
1378 }
1379
1380 #wpvr_premium_feature_popup .wpvr-premium-feature__btn-area {
1381 padding-top: 24px;
1382 margin-top: 20px;
1383 gap: 10px;
1384 }
1385
1386 #wpvr_premium_feature_popup .wpvr-premium-feature__discount-price {
1387 flex-direction: column;
1388 gap: 6px;
1389 align-items: center;
1390 }
1391
1392 #wpvr_premium_feature_popup .wpvr-premium-feature__btn {
1393 width: 100%;
1394 justify-content: center;
1395 padding: 14px 20px;
1396 font-size: 15px;
1397 }
1398
1399 #wpvr_premium_feature_popup .wpvr-premium-feature__heading {
1400 font-size: 18px;
1401 }
1402 }
1403
1404 /* ========================================
1405 RESPONSIVE STYLES
1406 ======================================== */
1407
1408 /* Large Tablets and Small Desktops (max-width: 1024px) */
1409 @media (max-width: 1024px) {
1410 .steps-container {
1411 margin: 20px;
1412 max-width: calc(100% - 40px);
1413 }
1414
1415 .sidebar {
1416 width: 220px;
1417 padding: 20px 15px;
1418 }
1419
1420 .logo-img {
1421 max-width: 140px;
1422 }
1423
1424 .nav-item {
1425 font-size: 14px;
1426 }
1427
1428 .nav-item::before {
1429 width: 28px;
1430 height: 28px;
1431 font-size: 12px;
1432 }
1433
1434 .main-content-steps {
1435 padding: 30px;
1436 }
1437
1438 .onboarding-footer {
1439 margin: 0 -30px;
1440 padding: 30px;
1441 }
1442
1443 .vertical-selection-grid {
1444 grid-template-columns: repeat(2, 1fr);
1445 gap: 0;
1446 }
1447
1448 .v-card {
1449 width: calc(100% + 1px);
1450 height: 161px;
1451 padding: 20px 12px;
1452 border-radius: 0;
1453 }
1454
1455 .v-card h3 {
1456 font-size: 14px;
1457 }
1458
1459 .v-card:hover {
1460 transform: none;
1461 box-shadow: none;
1462 }
1463
1464 .v-icon {
1465 font-size: 40px;
1466 }
1467
1468 .section-title {
1469 font-size: 24px;
1470 font-weight: 600;
1471 color: #3F04FE;
1472 line-height: 60px;
1473 letter-spacing: 0%;
1474 text-align: center;
1475 }
1476
1477 .tour-preview-window {
1478 max-width: 100%;
1479 }
1480
1481 #panorama-container,
1482 .image-placeholder {
1483 height: 350px;
1484 }
1485
1486 /* Shortcode Section - Small Desktop/Large Tablet */
1487 .shortcode-instructions {
1488 width: auto;
1489 max-width: 620px;
1490 }
1491
1492 .edit-tour-container {
1493 width: auto;
1494 max-width: 620px;
1495 padding-bottom: 150px;
1496 }
1497 }
1498
1499 /* Tablets (max-width: 768px) */
1500 @media (max-width: 768px) {
1501 .steps-container {
1502 flex-direction: column;
1503 margin: 10px;
1504 max-width: calc(100% - 20px);
1505 min-height: auto;
1506 }
1507
1508 .sidebar {
1509 width: 100%;
1510 padding: 15px 20px;
1511 flex-direction: row;
1512 align-items: center;
1513 justify-content: space-between;
1514 }
1515
1516 .sidebar::after {
1517 display: none;
1518 }
1519
1520 .logo {
1521 margin-bottom: 0;
1522 padding-bottom: 0;
1523 }
1524
1525 .logo-img {
1526 max-width: 100px;
1527 }
1528
1529 .nav-steps {
1530 display: flex;
1531 flex-direction: row;
1532 gap: 5px;
1533 flex: none;
1534 }
1535
1536 .nav-item {
1537 padding: 8px;
1538 gap: 6px;
1539 font-size: 0;
1540 }
1541
1542 .nav-item .nav-text {
1543 display: none;
1544 }
1545
1546 .nav-item::before {
1547 margin-right: 0;
1548 width: 24px;
1549 height: 24px;
1550 }
1551
1552 .nav-item.active {
1553 margin-left: 0;
1554 width: auto;
1555 padding: 8px;
1556 border-radius: 50%;
1557 }
1558
1559 .version-tag {
1560 display: none;
1561 }
1562
1563 .main-content-steps {
1564 padding: 20px;
1565 }
1566
1567 .main-content-welcome {
1568 padding: 20px;
1569 }
1570
1571 .step#step-welcome .welcome-container {
1572 max-width: 100%;
1573 }
1574
1575 .step#step-welcome .welcome-top {
1576 padding: 40px 25px;
1577 }
1578
1579 .step#step-welcome .welcome-bottom {
1580 padding: 54px 25px;
1581 }
1582
1583 .step#step-welcome .consent-label {
1584 margin-top: 35px;
1585 }
1586
1587 .step#step-welcome .hero-title {
1588 font-size: 24px;
1589 font-weight: 600;
1590 color: #3F04FE;
1591 line-height: 60px;
1592 letter-spacing: 0%;
1593 text-align: center;
1594 }
1595
1596 .step#step-welcome .hero-sub {
1597 font-weight: 400;
1598 font-size: 14px;
1599 line-height: 26px;
1600 letter-spacing: 0%;
1601 text-align: center;
1602 color: #6D667D;
1603 margin-bottom: 30px;
1604 }
1605
1606 .step#step-welcome .welcome-checklist {
1607 flex-direction: column;
1608 gap: 16px;
1609 align-items: flex-start;
1610 }
1611
1612 .step#step-welcome .welcome-checklist li {
1613 font-size: 14px;
1614 }
1615
1616 .section-title {
1617 font-size: 22px;
1618 font-weight: 600;
1619 color: #3F04FE;
1620 line-height: 55px;
1621 letter-spacing: 0%;
1622 text-align: center;
1623 }
1624
1625 .section-sub {
1626 font-weight: 400;
1627 font-size: 14px;
1628 line-height: 26px;
1629 letter-spacing: 0%;
1630 text-align: center;
1631 color: #6D667D;
1632 margin-bottom: 30px;
1633 }
1634
1635 .vertical-selection-grid {
1636 grid-template-columns: repeat(2, 1fr);
1637 gap: 0;
1638 max-height: none;
1639 }
1640
1641 .v-card {
1642 width: calc(100% + 1px);
1643 height: 151px;
1644 padding: 18px 12px;
1645 border-radius: 0;
1646 }
1647
1648 .v-card:hover {
1649 transform: none;
1650 box-shadow: none;
1651 }
1652
1653 .v-icon {
1654 font-size: 36px;
1655 margin-bottom: 0;
1656 }
1657
1658 .v-card h3 {
1659 font-size: 13px;
1660 }
1661
1662 .template-preview-box {
1663 padding: 40px 25px;
1664 }
1665
1666 #panorama-container,
1667 .image-placeholder {
1668 height: 300px;
1669 }
1670
1671 .onboarding-footer {
1672 flex-direction: column-reverse;
1673 gap: 20px;
1674 padding: 20px;
1675 margin: 0 -20px;
1676 }
1677
1678 .footer-right {
1679 width: 100%;
1680 justify-content: center;
1681 }
1682
1683 .btn-back {
1684 width: 100%;
1685 justify-content: center;
1686 text-align: center;
1687 padding: 12px;
1688 border: 1px solid var(--wpvr-border);
1689 border-radius: 4px;
1690 }
1691
1692 .btn-skip {
1693 position: static;
1694 margin-bottom: 10px;
1695 }
1696
1697 .hotspot-modal-content {
1698 max-width: calc(100% - 40px);
1699 margin: 0 20px;
1700 }
1701
1702 .drop-zone {
1703 padding: 40px 25px;
1704 }
1705
1706 .upload-preview-content {
1707 flex-direction: column;
1708 text-align: center;
1709 }
1710
1711 /* Shortcode Section - Tablet */
1712 .shortcode-instructions {
1713 width: auto;
1714 max-width: 100%;
1715 margin: 30px 20px;
1716 }
1717
1718 .edit-tour-container {
1719 width: auto;
1720 max-width: 100%;
1721 margin: 0 20px 24px;
1722 padding-bottom: 100px;
1723 }
1724
1725 .shortcode-box {
1726 flex-direction: column;
1727 gap: 12px;
1728 text-align: center;
1729 }
1730
1731 .btn-copy-shortcode {
1732 width: 100%;
1733 }
1734 }
1735
1736 /* Mobile (max-width: 576px) */
1737 @media (max-width: 576px) {
1738 body {
1739 font-size: 14px;
1740 }
1741
1742 .steps-container {
1743 margin: 0;
1744 max-width: 100%;
1745 border-radius: 0;
1746 min-height: 100vh;
1747 }
1748
1749 .sidebar {
1750 padding: 12px 15px;
1751 position: sticky;
1752 top: 0;
1753 z-index: 100;
1754 background: var(--wpvr-white);
1755 box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
1756 }
1757
1758 .logo-img {
1759 max-width: 80px;
1760 }
1761
1762 .nav-item::before {
1763 width: 28px;
1764 height: 28px;
1765 font-size: 11px;
1766 }
1767
1768 .main-content-steps {
1769 padding: 15px;
1770 }
1771
1772 .main-content-welcome {
1773 padding: 15px;
1774 }
1775
1776 .step#step-welcome .welcome-top {
1777 padding: 30px 20px;
1778 }
1779
1780 .step#step-welcome .welcome-bottom {
1781 padding: 40px 20px;
1782 }
1783
1784 .step#step-welcome .consent-label {
1785 margin-top: 25px;
1786 font-size: 12px;
1787 }
1788
1789 .step#step-welcome .logo-img {
1790 width: 80px;
1791 margin-bottom: 20px;
1792 }
1793
1794 .step#step-welcome .hero-title {
1795 font-size: 20px;
1796 font-weight: 600;
1797 color: #3F04FE;
1798 line-height: 50px;
1799 letter-spacing: 0%;
1800 text-align: center;
1801 }
1802
1803 .step#step-welcome .hero-sub {
1804 font-weight: 400;
1805 font-size: 13px;
1806 line-height: 24px;
1807 letter-spacing: 0%;
1808 text-align: center;
1809 color: #6D667D;
1810 }
1811
1812 .step#step-welcome .btn-primary {
1813 width: 100%;
1814 padding: 14px 20px;
1815 }
1816
1817 .section-title {
1818 font-size: 18px;
1819 font-weight: 600;
1820 color: #3F04FE;
1821 line-height: 45px;
1822 letter-spacing: 0%;
1823 text-align: center;
1824 }
1825
1826 .section-sub {
1827 font-weight: 400;
1828 font-size: 13px;
1829 line-height: 24px;
1830 letter-spacing: 0%;
1831 text-align: center;
1832 color: #6D667D;
1833 margin-bottom: 20px;
1834 }
1835
1836 .step-indicator {
1837 font-size: 11px;
1838 margin-bottom: 20px;
1839 }
1840
1841 .vertical-selection-grid {
1842 grid-template-columns: repeat(2, 1fr);
1843 gap: 0;
1844 max-height: none;
1845 }
1846
1847 .v-card {
1848 width: calc(100% + 1px);
1849 height: 141px;
1850 padding: 16px 10px;
1851 justify-content: center;
1852 border-radius: 0;
1853 }
1854
1855 .v-card:hover {
1856 transform: none;
1857 box-shadow: none;
1858 }
1859
1860 .v-icon {
1861 font-size: 32px;
1862 margin-bottom: 0;
1863 flex-shrink: 0;
1864 }
1865
1866 .v-card h3 {
1867 font-size: 12px;
1868 margin: 10px 0 0 0;
1869 }
1870
1871 .template-preview-box {
1872 padding: 30px 20px;
1873 border-radius: 12px;
1874 }
1875
1876 .icon-placeholder {
1877 font-size: 48px;
1878 }
1879
1880 .template-preview-title {
1881 font-size: 18px;
1882 }
1883
1884 .template-preview-desc {
1885 font-size: 13px;
1886 }
1887
1888 #panorama-container,
1889 .image-placeholder {
1890 height: 250px;
1891 }
1892
1893 .tour-preview-window {
1894 border-radius: 8px;
1895 margin-bottom: 20px;
1896 }
1897
1898 .preview-controls {
1899 padding: 6px 10px;
1900 gap: 12px;
1901 }
1902
1903 .preview-controls span {
1904 font-size: 10px;
1905 }
1906
1907 .onboarding-footer {
1908 margin: 20px -15px 0;
1909 padding: 15px;
1910 }
1911
1912 .btn-primary,
1913 .btn-primary-outline {
1914 padding: 12px 20px;
1915 font-size: 13px;
1916 width: 100%;
1917 }
1918
1919 .footer-right {
1920 flex-direction: column;
1921 gap: 10px;
1922 }
1923
1924 .drop-zone {
1925 padding: 30px 20px;
1926 border-radius: 12px;
1927 }
1928
1929 .upload-section-label {
1930 font-size: 14px;
1931 line-height: 20px;
1932 margin-top: 6px;
1933 }
1934
1935 .drop-zone-icon {
1936 font-size: 36px;
1937 }
1938
1939 .drop-zone-text {
1940 font-size: 13px;
1941 line-height: 24px;
1942 }
1943
1944 .hotspot-modal-content {
1945 max-width: calc(100% - 20px);
1946 margin: 0 10px;
1947 }
1948
1949 .hotspot-modal-header {
1950 padding: 16px 20px;
1951 }
1952
1953 .hotspot-modal-body {
1954 padding: 20px;
1955 }
1956
1957 .hotspot-modal-actions {
1958 flex-direction: column;
1959 }
1960
1961 .hotspot-modal-actions .btn-secondary,
1962 .hotspot-modal-actions .btn-primary {
1963 width: 100%;
1964 justify-content: center;
1965 }
1966
1967 /* Shortcode Section - Mobile */
1968 .shortcode-instructions {
1969 width: auto;
1970 max-width: 100%;
1971 margin: 20px 15px;
1972 padding: 20px;
1973 }
1974
1975 .shortcode-title {
1976 font-size: 16px;
1977 }
1978
1979 .shortcode-description {
1980 font-size: 13px;
1981 }
1982
1983 .shortcode-box {
1984 flex-direction: column;
1985 gap: 12px;
1986 padding: 14px 16px;
1987 }
1988
1989 .shortcode-code {
1990 font-size: 14px;
1991 word-break: break-all;
1992 }
1993
1994 .btn-copy-shortcode {
1995 width: 100%;
1996 height: 40px;
1997 padding: 0;
1998 }
1999
2000 .edit-tour-container {
2001 width: auto;
2002 max-width: 100%;
2003 margin: 0 15px 24px;
2004 padding-bottom: 60px;
2005 }
2006
2007 .btn-edit-tour {
2008 padding: 12px 24px;
2009 font-size: 14px;
2010 }
2011 }
2012
2013 /* Extra Small Mobile (max-width: 360px) */
2014 @media (max-width: 360px) {
2015 .step#step-welcome .hero-title {
2016 font-size: 18px;
2017 font-weight: 600;
2018 color: #3F04FE;
2019 line-height: 45px;
2020 letter-spacing: 0%;
2021 text-align: center;
2022 }
2023
2024 .step#step-welcome .welcome-checklist {
2025 gap: 12px;
2026 }
2027
2028 .step#step-welcome .welcome-checklist li {
2029 font-size: 13px;
2030 }
2031
2032 .nav-item::before {
2033 width: 24px;
2034 height: 24px;
2035 font-size: 10px;
2036 }
2037
2038 .section-title {
2039 font-size: 16px;
2040 font-weight: 600;
2041 color: #3F04FE;
2042 line-height: 40px;
2043 letter-spacing: 0%;
2044 text-align: center;
2045 }
2046
2047 #panorama-container,
2048 .image-placeholder {
2049 height: 200px;
2050 }
2051 }
2052
2053 .screen-reader-text {
2054 position: absolute;
2055 width: 1px;
2056 height: 1px;
2057 padding: 0;
2058 margin: -1px;
2059 overflow: hidden;
2060 clip: rect(0, 0, 0, 0);
2061 white-space: nowrap;
2062 border: 0;
2063 }
2064
2065 /* Custom additions for 11-point feedback implementation */
2066 .skip-industry-container {
2067 text-align: center;
2068 margin-top: 20px;
2069 margin-bottom: 20px;
2070 }
2071
2072 .skip-link {
2073 color: #3F04FE;
2074 font-size: 14px;
2075 font-weight: 500;
2076 text-decoration: underline;
2077 cursor: pointer;
2078 }
2079
2080 .custom-upload-btn-container {
2081 display: flex;
2082 justify-content: center;
2083 align-items: center;
2084 padding: 40px;
2085 background: #FAFAFA;
2086 border: 1px dashed #E5E7EB;
2087 border-radius: 8px;
2088 width: 100%;
2089 }
2090
2091 .wizard-consent-block {
2092 max-width: 692px;
2093 margin: 0 auto 16px;
2094 padding: 14px 16px;
2095 background: #F8F9FA;
2096 border: 1px solid #E5E7EB;
2097 border-radius: 8px;
2098 text-align: left;
2099 }
2100
2101 .wizard-consent-block .consent-label {
2102 display: flex;
2103 align-items: center;
2104 gap: 12px;
2105 cursor: pointer;
2106 font-size: 14px;
2107 color: #374151;
2108 font-weight: 500;
2109 }
2110
2111 .wizard-consent-block .consent-label input[type="checkbox"] {
2112 width: 18px;
2113 height: 18px;
2114 margin: 0;
2115 cursor: pointer;
2116 }
2117
2118 /* ── Template Step Redesign ─────────────────────────────────────── */
2119 .template-container {
2120 display: flex;
2121 flex-direction: column;
2122 gap: 24px;
2123 width: 100%;
2124 max-width: 820px;
2125 margin: 0 auto;
2126 }
2127
2128 .template-upload-zone {
2129 display: flex;
2130 flex-direction: column;
2131 align-items: center;
2132 justify-content: center;
2133 gap: 12px;
2134 width: 100%;
2135 padding: 48px 32px;
2136 border: 2px dashed #c0b8f0;
2137 border-radius: 16px;
2138 background: #fff;
2139 cursor: pointer;
2140 transition: border-color 0.2s ease, background 0.2s ease;
2141 }
2142
2143 .template-upload-zone:hover {
2144 border-color: #3F04FE;
2145 background: #faf8ff;
2146 }
2147
2148 .template-upload-icon {
2149 display: flex;
2150 align-items: center;
2151 justify-content: center;
2152 margin-bottom: 4px;
2153 }
2154
2155 .template-upload-label {
2156 font-size: 18px;
2157 font-weight: 700;
2158 color: #1a1a2e;
2159 margin: 0;
2160 text-align: center;
2161 }
2162
2163 .template-upload-hint {
2164 font-size: 14px;
2165 color: #6b7280;
2166 margin: 0;
2167 text-align: center;
2168 }
2169
2170 .template-browse-link {
2171 color: #3F04FE;
2172 font-weight: 600;
2173 text-decoration: underline;
2174 cursor: pointer;
2175 }
2176
2177 .template-browse-link:hover {
2178 color: #2a00c0;
2179 }
2180
2181 .template-upload-supported {
2182 font-size: 13px;
2183 color: #9ca3af;
2184 margin: 0;
2185 text-align: center;
2186 }
2187
2188 .template-cta-row {
2189 width: 100%;
2190 }
2191
2192 .btn-use-template {
2193 display: block;
2194 width: 100%;
2195 padding: 18px 32px;
2196 background: #fff;
2197 border: 2px solid #3F04FE;
2198 border-radius: 10px;
2199 font-size: 15px;
2200 font-weight: 700;
2201 letter-spacing: 0.08em;
2202 color: #3F04FE;
2203 cursor: pointer;
2204 transition: all 0.2s ease;
2205 text-align: center;
2206 }
2207
2208 .btn-use-template:hover {
2209 background: #3F04FE;
2210 color: #fff;
2211 }
2212
2213 .btn-use-template:disabled,
2214 .btn-use-template.is-loading {
2215 opacity: 0.6;
2216 cursor: not-allowed;
2217 }
2218
2219 /* ── Step Progress Bar ──────────────────────────────────────────── */
2220 .step-progress {
2221 display: flex;
2222 align-items: center;
2223 gap: 6px;
2224 justify-content: center;
2225 margin-bottom: 28px;
2226 }
2227
2228 .step-seg {
2229 height: 5px;
2230 width: 72px;
2231 border-radius: 10px;
2232 background: #e0dcf5;
2233 transition: background 0.3s ease;
2234 }
2235
2236 .step-seg.filled {
2237 background: #3F04FE;
2238 }
2239
2240 .step-count {
2241 margin-left: 10px;
2242 font-size: 13px;
2243 font-weight: 600;
2244 color: #6B7280;
2245 white-space: nowrap;
2246 }
2247
2248 /* Template container full-width layout: zone + button same width */
2249 .template-container {
2250 display: flex;
2251 flex-direction: column;
2252 gap: 20px;
2253 width: 100%;
2254 max-width: 820px;
2255 margin: 0 auto;
2256 }
2257
2258 .template-upload-zone,
2259 .template-cta-row,
2260 .btn-use-template {
2261 width: 100%;
2262 box-sizing: border-box;
2263 }