.planning-v2 { display:grid;gap:16px; }
.planning-v2 .card { padding:20px;margin:12px 0; }
.planning-v2 label { display:grid;align-content:start;gap:6px;font-weight:600; }
.planning-v2 > h2,.planning-v2 > h3,.planning-v2 > p { margin:4px 0; }
.planning-v2 > .inline-callout { display:flex;flex-wrap:wrap;gap:8px; }
.v2-toolbar,.v2-steps { display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:16px 0; }
.v2-steps [aria-current="step"] { background:#6f4ef6;color:white; }
.v2-columns,.v2-fields { display:grid;align-items:start;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:12px 0; }
.v2-columns aside { background:#f7f5ff;border-radius:10px;padding:16px; }
.v2-answer-text { white-space:pre-wrap;overflow-wrap:anywhere; }
.v2-files { display:flex;gap:10px;flex-wrap:wrap; }
.v2-photo { display:grid;gap:6px;width:222px;max-width:100%;border:1px solid #ded9ef;background:white;border-radius:8px;padding:6px;cursor:zoom-in; }
.v2-photo img { width:100%;height:156px;max-height:156px;object-fit:contain; }
.v2-photo span { overflow-wrap:anywhere; }
.v2-table-wrap { overflow-x:auto; }
.v2-table { width:100%;border-collapse:collapse; }
.v2-table th,.v2-table td { text-align:left;padding:10px;border-bottom:1px solid #e6e3ee;vertical-align:top; }
.v2-config-question { padding:12px;border-bottom:1px solid #e6e3ee; }
.v2-config-image { max-width:240px;max-height:180px; }
.v2-lightbox { max-width:95vw;max-height:95vh;border:0;border-radius:12px;padding:16px; }
.v2-lightbox img { display:block;max-width:85vw;max-height:80vh;object-fit:contain; }
.v2-lightbox::backdrop { background:#0009; }
.v2-zoom-viewport { width:min(85vw,1200px);height:70vh;overflow:auto;background:#f2f2f5; }
.v2-lightbox .v2-zoom-canvas img { max-width:none;max-height:none;object-fit:contain; }
.v2-zoom-canvas { margin:auto; }
.v2-project-type { display:inline-block;font-size:14px;padding:4px 10px;border-radius:20px;background:#eee9ff;color:#613bd0;vertical-align:middle; }
.v2-slot-picker { border:1px solid #d7cfec;border-radius:8px;padding:10px;min-width:0; }
.v2-slot-picker table { width:100%;border-collapse:collapse; }
.v2-slot-picker th,.v2-slot-picker td { padding:5px;text-align:left; }
.v2-slot-picker input[type=checkbox] { width:18px;height:18px;accent-color:#7048f5; }
.planning-v2 .v2-day-choice { display:flex;align-items:center;gap:10px;padding:5px 0; }
.planning-v2 [hidden] { display:none!important; }
.planning-v2.v2-compact-placement { gap:8px; }
.v2-compact-placement .v2-toolbar,.v2-compact-placement .v2-steps { margin:0;gap:6px; }
.v2-compact-placement .card { margin:0;padding:12px; }
.v2-placement-columns { display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:start; }
.v2-placement h4 { margin:0 0 8px; }
.v2-placement aside { background:#f7f5ff;border-radius:8px;padding:12px; }
.v2-placement aside ul { padding-left:18px;margin:0 0 8px; }
.v2-placement aside li { margin-bottom:6px; }
.v2-placement-answer { padding:7px 0;border-bottom:1px solid #e6e3ee;font-size:13px; }
.v2-placement-answer:first-child { padding-top:0; }
.v2-placement-answer .v2-answer-text { margin:3px 0; }
.v2-placement-answer .v2-photo { width:222px;max-width:100%;padding:3px; }
.v2-placement-answer .v2-photo img { height:156px; }
.v2-placement-answer .v2-photo span { display:none; }
.v2-placement-label { display:block;color:#696477;font-size:12px;margin-bottom:10px; }
.v2-placement-office { display:grid;gap:12px;min-width:0; }
.v2-placement-customer { min-width:0; }
.v2-placement-entry { border:1px solid #bfb1ff;border-left:4px solid #7352ef;border-radius:8px;padding:12px;background:#faf8ff; }
.v2-placement-entry select,.v2-placement-entry textarea { background:white;border:1px solid #b6a8e0; }
.v2-placement-answer[data-placement-question="1"] .v2-photo { width:222px;max-width:100%; }
.v2-placement-answer[data-placement-question="1"] .v2-photo img { height:156px;max-height:156px; }
.v2-placement-decision { display:grid;grid-template-columns:1fr;gap:12px;margin:8px 0; }
.v2-placement-decision textarea { min-height:60px; }
.v2-placement-entry .v2-fields { grid-template-columns:1fr;gap:12px;margin:8px 0; }
.v2-step-footer .v2-next { margin-left:auto;background:#7048f5;color:#fff;border-color:#7048f5; }
.v2-step-footer .v2-next:hover { background:#5932d9; }
@media(max-width:760px) { .v2-placement-columns,.v2-placement-decision { grid-template-columns:1fr; } }
@media(max-width:760px) { .v2-columns,.v2-fields { grid-template-columns:1fr; } .planning-v2 .card { padding:12px; } }
