/* 분양현장소개 공통 영역 */
#boxPresale {padding:0 0 60px;background:#fff;}
#boxPresale .presale-wrap {max-width:900px;padding-top:0;padding-bottom:3rem;}
#boxPresale .presale-head {display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:28px;}
#boxPresale .presale-head h2 {margin:0;color:#222;font-size:1.45rem;font-weight:500;line-height:1.45;letter-spacing:-.04em;word-break:keep-all;}
#boxPresale .presale-head p {margin:8px 0 0;color:#8b95a1;font-size:.9rem;line-height:1.6;}
#boxPresale .presale-write-button {display:inline-flex;align-items:center;justify-content:center;min-width:110px;height:44px;padding:0 1.5rem;border:1px solid var(--color-primary);border-radius:.5rem;background:var(--color-primary);color:#fff;font-size:.95rem;font-weight:500;text-decoration:none;}

/* 분양현장소개 검색 영역 */
#boxPresale #boxPresaleList .presale-tools {display:flex;align-items:center;justify-content:center;gap:10px;margin-bottom:30px;}
#boxPresale #boxPresaleList .presale-search {display:flex;flex:1;max-width:520px;height:44px;margin:0;border:1px solid #dfe3e8;border-radius:.5rem;overflow:hidden;background:#fff;}
#boxPresale #boxPresaleList .presale-tools .presale-write-button {flex:0 0 auto;height:44px;}
#boxPresale #boxPresaleList .presale-search input {flex:1;min-width:0;padding:0 16px;border:0;background:transparent;color:#222;font-size:.95rem;outline:0;}
#boxPresale #boxPresaleList .presale-search button {flex:0 0 76px;border:0;background:#1d2b3a;color:#fff;font-size:.9rem;cursor:pointer;}

/* 분양현장소개 갤러리 목록 */
#boxPresale #boxPresaleList .presale-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px 24px;border-top:2px solid #1d2b3a;padding-top:24px;}
#boxPresale #boxPresaleList .presale-card {display:block;min-width:0;color:inherit;text-decoration:none;}
#boxPresale #boxPresaleList .presale-card__thumb {position:relative;overflow:hidden;aspect-ratio:16/10;border-radius:.75rem;background:#eef1f4;}
#boxPresale #boxPresaleList .presale-card__thumb img {display:block;width:100%;height:100%;object-fit:cover;transition:transform .25s ease;}
#boxPresale #boxPresaleList .presale-card:hover .presale-card__thumb img {transform:scale(1.03);}
#boxPresale #boxPresaleList .presale-card__video {position:absolute;left:50%;top:50%;display:flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:50%;background:rgba(0,0,0,.65);color:#fff;transform:translate(-50%,-50%);}
#boxPresale #boxPresaleList .presale-card__video span {font-size:32px;}
#boxPresale #boxPresaleList .presale-card__fixed {position:absolute;left:12px;top:12px;padding:6px 10px;border-radius:999px;background:var(--color-primary);color:#fff;font-size:.75rem;font-weight:600;}
#boxPresale #boxPresaleList .presale-card__body {padding:16px 4px 0;}
#boxPresale #boxPresaleList .presale-card__body h3 {margin:0;overflow:hidden;color:#222;font-size:1.05rem;font-weight:500;line-height:1.5;letter-spacing:-.025em;text-overflow:ellipsis;white-space:nowrap;}
#boxPresale #boxPresaleList .presale-card__location {margin:7px 0 0;overflow:hidden;color:#596273;font-size:.9rem;line-height:1.5;text-overflow:ellipsis;white-space:nowrap;}
#boxPresale #boxPresaleList .presale-card__summary {display:-webkit-box;min-height:42px;margin:8px 0 0;overflow:hidden;color:#8b95a1;font-size:.9rem;line-height:1.5;-webkit-box-orient:vertical;-webkit-line-clamp:2;}
#boxPresale #boxPresaleList .presale-card__meta {display:flex;align-items:center;flex-wrap:wrap;gap:.35rem .6rem;margin-top:12px;color:#8b95a1;font-size:.85rem;line-height:1.5;}
#boxPresale #boxPresaleList .presale-card__meta span:not(:last-child)::after {content:'·';margin-left:.6rem;color:#c0c4cc;}
#boxPresale #boxPresaleList .presale-empty {grid-column:1/-1;min-height:200px;padding:5rem 1rem;border-bottom:1px solid #e5e7eb;color:#94a3b8;font-size:.95rem;text-align:center;}
#boxPresale #boxPresaleList .presale-load {padding:2rem 0;text-align:center;}
#boxPresale #boxPresaleList .presale-load__button {display:inline-flex;align-items:center;justify-content:center;min-width:110px;height:44px;padding:0 1.5rem;border:1px solid #dfe3e8;border-radius:.5rem;background:#fff;color:#333;font-size:.95rem;font-weight:500;cursor:pointer;}
#boxPresale #boxPresaleList .presale-load.is-loading .presale-load__button {opacity:.5;pointer-events:none;}
#boxPresale #boxPresaleList .presale-load.is-error .presale-load__button {border-color:#e03131;color:#e03131;}

/* 분양현장소개 상세 영역 */
#boxPresale #boxPresaleView {max-width:900px;margin:0 auto;border-top:0;}
#boxPresale #boxPresaleView .presale-view__meta {display:flex;align-items:center;flex-wrap:wrap;gap:.6rem;margin-bottom:.6rem;padding-top:1.5rem;color:#888;font-size:.9rem;line-height:1.5;}
#boxPresale #boxPresaleView .presale-view__title {margin:0;padding:0 0 1.8rem;border-bottom:1px solid #e5e7eb;color:#222;font-size:1.45rem;font-weight:500;line-height:1.45;letter-spacing:-.04em;word-break:keep-all;}
#boxPresale #boxPresaleView .presale-view__location {display:flex;align-items:center;gap:.35rem;margin:0;padding:1.5rem 0 0;color:#596273;font-size:1rem;line-height:1.6;}
#boxPresale #boxPresaleView .presale-view__location span {font-size:1.3rem;}
#boxPresale #boxPresaleView .presale-view__video {position:relative;width:100%;margin-top:1.8rem;padding-top:56.25%;overflow:hidden;border-radius:.75rem;background:#000;}
#boxPresale #boxPresaleView .presale-view__video iframe {position:absolute;left:0;top:0;width:100%;height:100%;border:0;}
#boxPresale #boxPresaleView .presale-view__image {margin:1.8rem 0 0;text-align:center;}
#boxPresale #boxPresaleView .presale-view__image img {display:block;max-width:100%;height:auto;margin:0 auto;border-radius:.75rem;}
#boxPresale #boxPresaleView .presale-view__content {min-height:200px;padding:2rem 0 3rem;color:#333;font-size:1rem;line-height:1.9;word-break:keep-all;}
#boxPresale #boxPresaleView .presale-view__nav {border-top:1px solid #e5e7eb;}
#boxPresale #boxPresaleView .presale-view__nav-item {display:flex;align-items:center;gap:1rem;min-height:64px;padding:0 1.25rem;border-bottom:1px solid #e5e7eb;color:#222;text-decoration:none;}
#boxPresale #boxPresaleView .presale-view__nav-label {flex:0 0 50px;color:#8b95a1;}
#boxPresale #boxPresaleView .presale-view__nav-item strong {min-width:0;overflow:hidden;font-weight:400;white-space:nowrap;text-overflow:ellipsis;}
#boxPresale #boxPresaleView .presale-view__buttons {display:flex;align-items:center;justify-content:center;gap:8px;padding-top:2rem;}
#boxPresale #boxPresaleView .presale-view__buttons form {margin:0;}
#boxPresale #boxPresaleView .presale-view__button {display:inline-flex;align-items:center;justify-content:center;min-width:110px;height:44px;padding:0 1.5rem;border:1px solid #dfe3e8;border-radius:.5rem;background:#fff;color:#333;font-size:.95rem;font-weight:500;cursor:pointer;text-decoration:none;}
#boxPresale #boxPresaleView .presale-view__button.is-list {border-color:#1d2b3a;background:#1d2b3a;color:#fff;}

/* 분양현장소개 등록 및 수정 폼 */
#boxPresale #boxPresaleForm {max-width:900px;margin:0 auto;}
#boxPresale #boxPresaleForm .presale-form {padding:30px;border:1px solid #e5e7eb;border-radius:14px;background:#fff;}
#boxPresale #boxPresaleForm .presale-form__row {margin-top:24px;}
#boxPresale #boxPresaleForm .presale-form__row:first-child {margin-top:0;}
#boxPresale #boxPresaleForm .presale-form__row>label {display:block;margin-bottom:9px;color:#2b3038;font-size:15px;font-weight:700;}
#boxPresale #boxPresaleForm .presale-form__row>label span {color:#e03131;}
#boxPresale #boxPresaleForm .presale-form__row>input[type='text'],#boxPresale #boxPresaleForm .presale-form__row>input[type='url'],#boxPresale #boxPresaleForm .presale-form__row>textarea {display:block;width:100%;padding:13px 15px;border:1px solid #dfe3e8;border-radius:8px;background:#fff;color:#222;font-size:15px;outline:0;box-sizing:border-box;}
#boxPresale #boxPresaleForm .presale-form__row>textarea {min-height:260px;resize:vertical;line-height:1.7;}
#boxPresale #boxPresaleForm .presale-form__row>input:focus,#boxPresale #boxPresaleForm .presale-form__row>textarea:focus {border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(16,185,129,.1);}
#boxPresale #boxPresaleForm .presale-form__row>input[type='file'] {display:block;width:100%;padding:12px;border:1px dashed #cbd2da;border-radius:8px;background:#f8fafc;box-sizing:border-box;}
#boxPresale #boxPresaleForm .presale-detail-files {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
#boxPresale #boxPresaleForm .presale-detail-file {padding:12px;border:1px solid #e5e7eb;border-radius:8px;background:#f8fafc;}
#boxPresale #boxPresaleForm .presale-detail-file>input {display:block;width:100%;}
#boxPresale #boxPresaleForm .presale-file-current {display:flex;align-items:center;gap:12px;margin-top:10px;}
#boxPresale #boxPresaleForm .presale-file-current img {display:block;width:100px;height:70px;border-radius:7px;object-fit:cover;}
#boxPresale #boxPresaleForm .presale-file-current label {color:#64748b;font-size:13px;}
#boxPresale #boxPresaleForm .presale-youtube-preview {display:none;position:relative;width:100%;margin-top:14px;padding-top:56.25%;overflow:hidden;border-radius:10px;background:#000;}
#boxPresale #boxPresaleForm .presale-youtube-preview.is-active {display:block;}
#boxPresale #boxPresaleForm .presale-youtube-preview iframe {position:absolute;left:0;top:0;width:100%;height:100%;border:0;}
#boxPresale #boxPresaleForm .presale-form__buttons {display:flex;align-items:center;justify-content:center;gap:8px;margin-top:32px;}
#boxPresale #boxPresaleForm .presale-form__buttons a,#boxPresale #boxPresaleForm .presale-form__buttons button {display:inline-flex;align-items:center;justify-content:center;min-width:110px;height:44px;padding:0 1.5rem;border:1px solid #dfe3e8;border-radius:.5rem;background:#fff;color:#333;font-size:.95rem;font-weight:500;cursor:pointer;text-decoration:none;}
#boxPresale #boxPresaleForm .presale-form__buttons button {border-color:var(--color-primary);background:var(--color-primary);color:#fff;}

/* 분양현장소개 반응형 */
@media(min-width:769px){#boxPresale {padding:0 0 2rem;}#boxPresale .presale-wrap {max-width:1100px;}#boxPresale .presale-head h2 {font-size:2rem;}#boxPresale #boxPresaleView {max-width:1100px;padding-top:.5rem;border-top:2px solid #1d2b3a;}#boxPresale #boxPresaleView .presale-view__meta {padding:1.5rem 2rem 0;}#boxPresale #boxPresaleView .presale-view__title {padding:0 2rem 2rem;font-size:2rem;}#boxPresale #boxPresaleView .presale-view__location {margin:0 2rem;padding-top:1.5rem;}#boxPresale #boxPresaleView .presale-view__video,#boxPresale #boxPresaleView .presale-view__image {margin-left:2rem;margin-right:2rem;width:calc(100% - 4rem);}#boxPresale #boxPresaleView .presale-view__content {padding:2.5rem 2rem 4rem;font-size:1.05rem;line-height:2;}#boxPresale #boxPresaleView .presale-view__nav {margin-left:2rem;margin-right:2rem;}}
@media(max-width:1024px){#boxPresale #boxPresaleList .presale-grid {grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:768px){#boxPresale {padding-bottom:40px;}#boxPresale .presale-head {align-items:flex-start;}#boxPresale #boxPresaleForm .presale-form {padding:22px;}#boxPresale #boxPresaleForm .presale-detail-files {grid-template-columns:1fr;}}
@media(max-width:480px){#boxPresale .presale-wrap {padding-left:0;padding-right:0;min-height:100vh;}#boxPresale .presale-head,#boxPresale #boxPresaleList .presale-search,#boxPresale #boxPresaleList .presale-grid,#boxPresale #boxPresaleList .presale-load {margin-left:1.25rem;margin-right:1.25rem;}#boxPresale .presale-head {display:block;margin-bottom:20px;}#boxPresale .presale-write-button {width:100%;margin-top:16px;}#boxPresale #boxPresaleList .presale-search {max-width:none;margin-bottom:22px;}#boxPresale #boxPresaleList .presale-grid {grid-template-columns:1fr;gap:28px;}#boxPresale #boxPresaleView .presale-view__meta,#boxPresale #boxPresaleView .presale-view__title,#boxPresale #boxPresaleView .presale-view__location,#boxPresale #boxPresaleView .presale-view__content {padding-left:1.25rem;padding-right:1.25rem;}#boxPresale #boxPresaleView .presale-view__video,#boxPresale #boxPresaleView .presale-view__image {margin-left:1.25rem;margin-right:1.25rem;width:calc(100% - 2.5rem);}#boxPresale #boxPresaleView .presale-view__nav {margin-left:1.25rem;margin-right:1.25rem;}#boxPresale #boxPresaleView .presale-view__buttons {display:none;}#boxPresale #boxPresaleForm {padding:0 1.25rem;}#boxPresale #boxPresaleForm .presale-form {padding:18px 14px;}}
