@charset "utf-8";
/* =====================================================================
   곤지암렌탈샵 브라더스 — MAISON LORO PIANA 디자인 시스템
   오트밀 · 캐시미어 · 비쿠냐 카멜 · 에스프레소  /  얇은 선 · 넓은 여백 · 조용한 세리프
   (요금표 · 가견적 · 예약 · 견적 · 게시판 · 관리자 공용)
   ===================================================================== */
:root{
  --lp-ivory:#faf8f4; --lp-oat:#f3eee6; --lp-sand:#e9e1d4; --lp-line:#ddd3c4; --lp-line2:#cfc3b1;
  --lp-taupe:#8b8174; --lp-stone:#5f574e; --lp-ink:#2a2622; --lp-ink2:#3b352f;
  --lp-camel:#a6865c; --lp-camel-d:#86683f; --lp-camel-l:#e9dcc6; --lp-red:#9b4a3c; --lp-green:#5d6b4d;
  --lp-serif:'Cormorant Garamond','Noto Serif KR',Georgia,serif; --lp-kr:'Noto Serif KR','Nanum Myeongjo',serif;
  /* 게시판 목록 · 상세(gonjiam_ledger / gonjiam_view) 호환 이름 */
  --ink:#2a2622; --ivory:#faf8f4; --taupe:#8b8174; --stone:#5f574e; --line:#ddd3c4; --camel:#a6865c;
  --lp-sans:'Pretendard',-apple-system,BlinkMacSystemFont,'Apple SD Gothic Neo','Malgun Gothic',sans-serif;
}
.lp{font-family:var(--lp-sans);color:var(--lp-ink);line-height:1.65;letter-spacing:-.15px;word-break:keep-all;text-align:left}
.lp *{box-sizing:border-box}
.lp h1,.lp h2,.lp h3,.lp h4,.lp p,.lp ul,.lp ol,.lp figure{margin:0;padding:0}
.lp ul,.lp ol{list-style:none}
.lp a{text-decoration:none !important;color:inherit}
.lp img{max-width:100%;display:block}
.lp button,.lp input,.lp select,.lp textarea{font-family:inherit}
.lp label{font-weight:inherit;margin:0}
.lp .sr{position:absolute !important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* 타이포 */
.lp-kicker{display:block;font-family:var(--lp-serif);font-style:italic;font-size:16px;font-weight:400;letter-spacing:.02em;color:var(--lp-camel)}
.lp-title{font-family:var(--lp-kr);font-weight:400;font-size:34px;line-height:1.35;letter-spacing:-.04em;color:var(--lp-ink)}
.lp-lead{font-size:14.5px;line-height:1.85;color:var(--lp-stone)}
.lp-num{font-family:var(--lp-serif);font-weight:500;letter-spacing:.02em}
.lp-rule{display:block;width:44px;height:1px;background:var(--lp-camel);margin:18px 0}

/* 버튼 */
.lp-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:50px;padding:0 28px;border:1px solid var(--lp-ink);border-radius:0;background:transparent;color:var(--lp-ink) !important;font-size:13.5px;font-weight:600;letter-spacing:.08em;cursor:pointer;transition:background .3s,color .3s,border-color .3s;white-space:nowrap}
.lp-btn:hover{background:var(--lp-ink);color:var(--lp-ivory) !important}
.lp-btn.dark{background:var(--lp-ink);color:var(--lp-ivory) !important}
.lp-btn.dark:hover{background:var(--lp-camel-d);border-color:var(--lp-camel-d)}
.lp-btn.camel{background:var(--lp-camel);border-color:var(--lp-camel);color:#fff !important}
.lp-btn.camel:hover{background:var(--lp-camel-d);border-color:var(--lp-camel-d)}
.lp-btn.ghost{border-color:var(--lp-line2);color:var(--lp-stone) !important}
.lp-btn.ghost:hover{border-color:var(--lp-ink);background:transparent;color:var(--lp-ink) !important}
.lp-btn.s{height:40px;padding:0 18px;font-size:12.5px}
.lp-btn[disabled]{opacity:.45;cursor:not-allowed}

/* ---------- 요금표 (치환코드 출력) ---------- */
.lp-table-wrap{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;border-top:1px solid var(--lp-ink);border-bottom:1px solid var(--lp-line)}
.lp-table{width:100%;min-width:560px;border-collapse:collapse;background:transparent;font-family:var(--lp-sans)}
.lp-table th,.lp-table td{padding:16px 14px;border-bottom:1px solid var(--lp-line);text-align:center;vertical-align:middle;font-size:14px}
.lp-table thead th{font-family:var(--lp-serif);font-size:13px;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:var(--lp-taupe);background:var(--lp-oat);white-space:nowrap}
.lp-table thead th small{display:block;font-family:var(--lp-sans);font-size:11.5px;letter-spacing:0;text-transform:none;color:var(--lp-stone);font-weight:600;margin-top:2px}
.lp-table tbody th{text-align:left;font-weight:600;color:var(--lp-ink);white-space:nowrap}
.lp-table tbody th small{display:block;font-size:11.5px;color:var(--lp-taupe);font-weight:500;margin-top:2px}
.lp-table tbody tr:last-child th,.lp-table tbody tr:last-child td{border-bottom:0}
.lp-table tbody tr:hover{background:rgba(233,225,212,.35)}
.lp-p{display:inline-flex;flex-direction:column;align-items:center;line-height:1.25}
.lp-p b{font-family:var(--lp-serif);font-size:20px;font-weight:600;color:var(--lp-ink);letter-spacing:.01em}
.lp-p del{font-size:12px;color:var(--lp-taupe);text-decoration:line-through;margin-top:2px}
.lp-p em{font-style:normal;font-size:11px;color:var(--lp-camel-d);font-weight:700;letter-spacing:.06em;margin-top:3px}
.lp-tag{display:inline-block;padding:2px 9px;border:1px solid var(--lp-camel);color:var(--lp-camel-d);font-size:11px;font-weight:700;letter-spacing:.08em;vertical-align:middle}
.lp-tag.dark{background:var(--lp-ink);border-color:var(--lp-ink);color:var(--lp-ivory)}
.lp-note-list{margin-top:14px}
.lp-note-list li{position:relative;padding:3px 0 3px 16px;font-size:13px;line-height:1.7;color:var(--lp-stone)}
.lp-note-list li::before{content:"";position:absolute;left:2px;top:12px;width:6px;height:1px;background:var(--lp-camel)}

/* 패키지 카드 (치환코드 {{요금표:패키지}}) */
.lp-pkgs{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--lp-line);border:1px solid var(--lp-line)}
.lp-pkg{background:var(--lp-ivory);padding:30px 28px}
.lp-pkg.feat{background:var(--lp-ink);color:var(--lp-ivory)}
.lp-pkg .no{font-family:var(--lp-serif);font-size:13px;letter-spacing:.3em;color:var(--lp-camel)}
.lp-pkg h3{margin-top:8px;font-family:var(--lp-kr);font-size:21px;font-weight:500;line-height:1.4;letter-spacing:-.03em}
.lp-pkg .sub{margin-top:4px;font-size:12.5px;color:var(--lp-taupe)}
.lp-pkg.feat .sub{color:#bfb3a2}
.lp-pkg table{width:100%;margin-top:18px;border-collapse:collapse}
.lp-pkg th,.lp-pkg td{padding:11px 4px;border-top:1px solid var(--lp-line);font-size:13px;text-align:right;vertical-align:middle}
.lp-pkg.feat th,.lp-pkg.feat td{border-color:rgba(233,225,212,.18)}
.lp-pkg thead th{font-family:var(--lp-serif);font-weight:500;letter-spacing:.18em;font-size:12px;color:var(--lp-taupe);border-top:0}
.lp-pkg tbody th{text-align:left;font-weight:600}
.lp-pkg .lp-p{align-items:flex-end}
.lp-pkg .lp-p b{font-size:18px}
.lp-pkg.feat .lp-p b{color:#fff}
.lp-pkg.feat .lp-p del{color:#a99d8c}

/* 결제 안내 카드 */
.lp-pay{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--lp-line);border:1px solid var(--lp-line)}
.lp-pay > div{background:var(--lp-ivory);padding:24px 22px}
.lp-pay h4{font-family:var(--lp-serif);font-style:italic;font-size:17px;font-weight:400;letter-spacing:.02em;color:var(--lp-camel)}
.lp-pay p{margin-top:8px !important;font-size:13.5px;line-height:1.75;color:var(--lp-stone)}

@media (max-width:760px){
  .lp-title{font-size:25px}
  .lp-pkgs,.lp-pay{grid-template-columns:1fr}
  .lp-pkg{padding:24px 20px}
  .lp-table th,.lp-table td{padding:13px 10px;font-size:13px}
  .lp-p b{font-size:17px}
}

/* ---------- 달력 ---------- */
.gjc-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}
.gjc-head b{font-family:var(--lp-serif);font-size:20px;font-weight:600;letter-spacing:.12em;color:var(--lp-ink)}
.gjc-nav{width:36px;height:36px;border:1px solid var(--lp-line);background:#fff;color:var(--lp-ink);font-size:20px;line-height:1;cursor:pointer;transition:border-color .2s}
.gjc-nav:hover{border-color:var(--lp-ink)}
.gjc-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}
.gjc-grid .w{padding:6px 0;text-align:center;font-family:var(--lp-serif);font-size:13px;letter-spacing:.1em;color:var(--lp-taupe)}
.gjc-grid .w.sun{color:var(--lp-red)}.gjc-grid .w.sat{color:#4d6283}
.gjc-grid .d{position:relative;height:46px;border:1px solid var(--lp-line);background:#fff;font-family:var(--lp-serif);font-size:17px;font-weight:600;color:var(--lp-ink);cursor:pointer;padding:0;transition:all .2s}
.gjc-grid .d i{position:absolute;left:0;right:0;bottom:3px;font-family:var(--lp-sans);font-style:normal;font-size:9px;font-weight:600;color:var(--lp-red);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gjc-grid .d.sun{color:var(--lp-red)}.gjc-grid .d.sat{color:#4d6283}
.gjc-grid .d:hover{border-color:var(--lp-ink)}
.gjc-grid .d.today{box-shadow:inset 0 -2px 0 var(--lp-camel)}
.gjc-grid .d.on{background:var(--lp-ink);border-color:var(--lp-ink);color:var(--lp-ivory)}
.gjc-grid .d.on i{color:var(--lp-camel-l)}
.gjc-grid .d.past{opacity:.3;cursor:default}
@media (max-width:640px){.gjc-grid .d{height:40px;font-size:15px}}

/* ---------- 예상 견적 패널 (가견적 · 예약 · 견적 공용) ---------- */
.gje{position:relative;background:var(--lp-ink);color:var(--lp-ivory);padding:30px 26px 26px}
.gje .k{font-family:var(--lp-serif);font-style:italic;font-size:16px;letter-spacing:.02em;color:var(--lp-camel)}
.gje h3{margin-top:6px;font-family:var(--lp-kr);font-size:20px;font-weight:500;color:#fff}
.gje .meta{margin-top:6px;font-size:12.5px;color:#bfb3a2}
.gje ul{margin-top:18px;border-top:1px solid rgba(233,225,212,.18)}
.gje li{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid rgba(233,225,212,.1);font-size:13px;color:#e4dacb}
.gje li span{flex:1;min-width:0}
.gje li small{color:#a99d8c;margin-left:4px}
.gje li b{font-family:var(--lp-serif);font-size:16px;font-weight:600;color:#fff;white-space:nowrap}
.gje li.os b{color:var(--lp-camel-l)}
.gje li.os span::after{content:"현장";margin-left:6px;padding:0 6px;border:1px solid rgba(233,220,198,.5);font-size:10.5px;color:var(--lp-camel-l)}
.gje .empty{padding:22px 0;text-align:center;font-size:13px;color:#a99d8c;border-bottom:1px solid rgba(233,225,212,.1)}
.gje .sum{margin-top:16px}
.gje .row{display:flex;justify-content:space-between;align-items:baseline;padding:4px 0;font-size:13px;color:#cfc3b1}
.gje .row b{font-family:var(--lp-serif);font-size:16px;font-weight:600;color:#e4dacb}
.gje .row.disc b{color:var(--lp-camel-l)}
.gje .total{display:flex;justify-content:space-between;align-items:flex-end;gap:10px;margin-top:14px;padding-top:16px;border-top:1px solid rgba(233,225,212,.3)}
.gje .total span{font-size:13px;color:#cfc3b1}
.gje .total b{font-family:var(--lp-serif);font-size:38px;font-weight:600;line-height:1;color:#fff;letter-spacing:.01em}
.gje .total b small{font-family:var(--lp-sans);font-size:14px;margin-left:3px}
.gje .warn{margin-top:12px;padding:11px 13px;border:1px solid rgba(233,220,198,.45);font-size:12.5px;line-height:1.6;color:var(--lp-camel-l)}
.gje .warn.err{border-color:#d49a8e;color:#f0c7bd}
.gje .pay{margin-top:16px;display:grid;grid-template-columns:1fr 1fr;gap:6px}
.gje .pay label{display:flex;flex-direction:column;gap:2px;padding:10px 12px;border:1px solid rgba(233,225,212,.25);cursor:pointer;font-size:12.5px;color:#cfc3b1;transition:all .2s}
.gje .pay label b{font-size:13px;color:#fff;font-weight:600}
.gje .pay input{position:absolute;opacity:0;pointer-events:none}
.gje .pay label.on{border-color:var(--lp-camel);background:rgba(166,134,92,.18)}
.gje .acts{display:grid;gap:8px;margin-top:18px}
.gje .acts .lp-btn{width:100%;border-color:rgba(250,248,244,.6);color:var(--lp-ivory) !important}
.gje .acts .lp-btn:hover{background:var(--lp-ivory);color:var(--lp-ink) !important}
.gje .acts .lp-btn.camel{border-color:var(--lp-camel);color:#fff !important}
.gje .acts .lp-btn.camel:hover{background:var(--lp-camel-d);color:#fff !important}
.gje .fine{margin-top:12px;font-size:11.5px;line-height:1.7;color:#a99d8c}

/* 모바일 하단 요약바 */
.gje-bar{display:none}
@media (max-width:991px){
  .gje-bar{position:fixed;left:0;right:0;bottom:0;z-index:1040;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px calc(12px + env(safe-area-inset-bottom));background:var(--lp-ink);color:var(--lp-ivory);border-top:1px solid var(--lp-camel)}
  .gje-bar span{font-size:12px;color:#cfc3b1;display:block}
  .gje-bar b{font-family:var(--lp-serif);font-size:24px;font-weight:600;color:#fff;line-height:1.1}
  .gje-bar a,.gje-bar button{flex:0 0 auto;height:44px;padding:0 18px;border:1px solid var(--lp-camel);background:var(--lp-camel);color:#fff !important;font-size:13px;font-weight:600;letter-spacing:.06em;cursor:pointer}
  body.gje-has-bar .mobile_footer{display:none !important}
  body.gje-has-bar #footer{margin-bottom:70px !important}
}

/* =====================================================================
   예약하기 · 견적문의 · 가견적 화면 (.gjf)
   ===================================================================== */
.gjf{max-width:1240px;margin:0 auto 60px}
.gjf-top{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;padding-bottom:30px;border-bottom:1px solid var(--lp-ink);margin-bottom:34px}
.gjf-top .lp-title{margin-top:12px}
.gjf-top .lp-lead{margin-top:10px !important;max-width:640px}
.gjf-top-links{display:flex;gap:6px;flex-wrap:wrap}
.gjf-banner{display:flex;flex-direction:column;gap:2px;margin:-14px 0 28px;padding:16px 20px;border:1px solid var(--lp-camel);background:#fbf7f0;font-size:13.5px;color:var(--lp-stone)}
.gjf-banner b{color:var(--lp-ink);font-weight:600}
.gjf-banner[hidden]{display:none}
.gjf-cat{margin-bottom:20px;display:flex;gap:10px;align-items:center}
.gjf-grid{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:44px;align-items:start}
.gjf-step{padding:34px 0 36px;border-bottom:1px solid var(--lp-line)}
.gjf-step:first-child{padding-top:0}
.gjf-h{display:flex;gap:20px;align-items:flex-start;margin-bottom:22px}
.gjf-h .n{flex:0 0 auto;font-family:var(--lp-serif);font-size:42px;font-weight:400;line-height:.9;color:var(--lp-line2)}
.gjf-h .k{display:block;font-family:var(--lp-serif);font-style:italic;font-size:15px;letter-spacing:.02em;color:var(--lp-camel)}
.gjf .gjf-h h2{margin-top:3px;font-family:var(--lp-kr);font-size:21px;font-weight:500;letter-spacing:-.03em;color:var(--lp-ink)}
.gjf-h p{margin-top:4px !important;font-size:13px;color:var(--lp-taupe)}
.gjf-fields{display:grid;gap:16px 18px}
.gjf-fields.c1{grid-template-columns:1fr}.gjf-fields.c2{grid-template-columns:1fr 1fr}.gjf-fields.c3{grid-template-columns:repeat(3,1fr)}.gjf-fields.c5{grid-template-columns:repeat(5,1fr)}
.gjf-f label{display:block;margin-bottom:7px;font-size:12.5px;font-weight:600;color:var(--lp-stone);letter-spacing:.02em}
.gjf-f label i{font-style:normal;color:var(--lp-camel)}
.gjf-in,.gjf-sel{width:100%;height:48px;border:1px solid var(--lp-line);border-radius:0;background:#fff;padding:0 14px;font-size:14.5px;font-weight:500;color:var(--lp-ink);outline:none;transition:border-color .2s;-webkit-appearance:none;appearance:none;box-shadow:none}
.gjf-sel{padding-right:34px;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%238b8174' stroke-width='1.2'/%3E%3C/svg%3E") right 14px center no-repeat}
.gjf-in:focus,.gjf-sel:focus{border-color:var(--lp-ink)}
.gjf-in.date{font-family:var(--lp-serif);font-size:19px;font-weight:600;letter-spacing:.06em;cursor:pointer;background:var(--lp-oat)}
.gjf-in.num{font-family:var(--lp-serif);font-size:22px;font-weight:600;text-align:right}
.gjf-won{display:flex;align-items:center;gap:8px}
.gjf-won span{font-size:14px;color:var(--lp-stone)}
.gjf-hint{display:block;margin-top:7px;font-size:12px;line-height:1.6;color:var(--lp-taupe)}
.gjf-chk{display:inline-flex;align-items:center;gap:6px;margin-top:9px;font-size:12.5px;color:var(--lp-stone);cursor:pointer}
.gjf-chk input,.gjf-opt input{accent-color:var(--lp-ink);width:15px;height:15px;margin:0}
.gjf-opts{display:flex;gap:14px;margin-top:14px;font-size:12.5px;color:var(--lp-stone)}
.gjf-opt{display:inline-flex;gap:6px;align-items:center}
.gjf-sched{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:28px;align-items:start}
.gjf-cal{padding:18px;border:1px solid var(--lp-line);background:#fff}
.gjf-pkgs{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--lp-line);border:1px solid var(--lp-line)}
.gjf-pkg{background:#fff;padding:20px 20px 14px}
.gjf-pkg.feat{background:var(--lp-oat)}
.gjf-pkg-h{display:flex;flex-direction:column;gap:2px;margin-bottom:10px}
.gjf-pkg-h .no{font-family:var(--lp-serif);font-size:12px;letter-spacing:.3em;color:var(--lp-camel)}
.gjf-pkg-h b{font-family:var(--lp-kr);font-size:15.5px;font-weight:500;color:var(--lp-ink);line-height:1.45}
.gjf-pkg-h small{font-size:11.5px;color:var(--lp-taupe)}
.gjf-row{display:grid;grid-template-columns:minmax(0,1fr) 84px 92px;gap:6px;align-items:center;padding:8px 0;border-top:1px solid var(--lp-sand)}
.gjf-row .nm{font-size:13px;font-weight:600;color:var(--lp-ink);line-height:1.35}
.gjf-row .gjf-sel{height:40px;font-size:13px;padding:0 26px 0 10px;background-position:right 9px center}
.gjf .u{display:block;font-style:normal;font-family:var(--lp-serif);font-size:14.5px;font-weight:600;color:var(--lp-camel-d);margin-top:1px}
.gjf .u del{font-family:var(--lp-sans);font-size:11px;font-weight:400;color:var(--lp-taupe);margin-left:4px}
.gjf-f label .u{display:inline;margin-left:6px}
.gjf-items{display:grid;grid-template-columns:1fr 1fr;gap:0 26px}
.gjf-item{display:grid;grid-template-columns:minmax(0,1fr) 110px;gap:10px;align-items:center;padding:12px 0;border-bottom:1px solid var(--lp-sand)}
.gjf-item .nm{font-size:13.5px;font-weight:600;color:var(--lp-ink);line-height:1.35}
.gjf-item .gjf-sel{height:42px;font-size:13.5px}
.gjf-lift{display:grid;grid-template-columns:1fr 1fr;gap:16px 18px}
.gjf .gjf-cond{grid-column:1/-1;margin-top:12px !important;padding:12px 16px;border-left:2px solid var(--lp-camel);background:var(--lp-oat);font-size:12.5px;line-height:1.75;color:var(--lp-stone)}
.gjf .gjf-bank{display:flex;gap:14px;align-items:baseline;margin-top:18px !important;padding:14px 18px;border:1px solid var(--lp-line);background:#fff}
.gjf-bank span{font-family:var(--lp-serif);font-style:italic;font-size:16px;color:var(--lp-camel)}
.gjf-bank b{font-size:15px;font-weight:600}
.gjf-pols{display:grid;gap:10px}
.gjf-pol{padding:20px 22px;border:1px solid var(--lp-line);background:#fff}
.gjf .gjf-pol h4{font-family:var(--lp-kr);font-size:15.5px;font-weight:500;margin-bottom:10px;color:var(--lp-ink)}
.gjf .gjf-pol li{position:relative;list-style:none;margin:0;padding:4px 0 4px 18px !important;font-size:13.5px;line-height:1.7;color:var(--lp-stone)}
.gjf .gjf-pol li::before{content:"";position:absolute;left:2px;top:15px;width:7px;height:1px;background:var(--lp-camel)}
.gjf .gjf-pol li.psub{padding:8px 0 2px !important;font-weight:600;color:var(--lp-camel-d)}
.gjf .gjf-pol li.psub::before{display:none}
.gjf-agree{display:flex;align-items:center;gap:14px;margin-top:14px;padding:18px 20px;border:1px solid var(--lp-ink);background:#fff;cursor:pointer;font-size:14.5px;font-weight:600;color:var(--lp-ink);transition:background .25s,color .25s}
.gjf-agree input{width:20px;height:20px;margin:0;flex:0 0 auto;accent-color:var(--lp-camel)}
.gjf-agree small{display:block;font-size:12px;font-weight:500;color:var(--lp-taupe);margin-top:2px}
.gjf-agree.ok{background:var(--lp-ink);color:var(--lp-ivory)}
.gjf-agree.ok small{color:#bfb3a2}
.gjf-editor textarea,.gjf-editor #wr_content{width:100% !important;min-height:220px;border:1px solid var(--lp-line);border-radius:0;padding:16px;font-family:var(--lp-sans);font-size:14px;line-height:1.8;color:var(--lp-ink);background:#fff;outline:none}
.gjf-editor textarea:focus{border-color:var(--lp-ink)}
.gjf-file{display:grid;gap:8px;margin-bottom:12px}
.gjf-captcha{padding:16px;border:1px solid var(--lp-line);background:#fff}
.gjf-submit{display:flex;gap:8px;justify-content:center;padding:38px 0 10px}
.gjf-submit .lp-btn{min-width:180px}
.gjf-step.adm{background:#fbf7f0;padding:24px;border:1px dashed var(--lp-camel);margin-top:20px}
.gjf-side{align-self:stretch}
.gjf-sticky{position:sticky;top:110px}
@media (max-width:1100px){.gjf-grid{grid-template-columns:minmax(0,1fr) 330px;gap:28px}.gjf-fields.c5{grid-template-columns:repeat(3,1fr)}.gjf-sched{grid-template-columns:1fr}}
@media (max-width:991px){
  .gjf-grid{grid-template-columns:1fr}
  .gjf-sticky{position:static}
  .gjf-side{order:2}
}
@media (max-width:640px){
  .gjf-top{padding-bottom:22px;margin-bottom:24px}
  .gjf-top-links .lp-btn{flex:1}
  .gjf-h{gap:14px}.gjf-h .n{font-size:32px}
  .gjf .gjf-h h2{font-size:18px}
  .gjf-fields.c3,.gjf-fields.c5,.gjf-lift{grid-template-columns:1fr 1fr}
  .gjf-fields.c2{grid-template-columns:1fr}
  .gjf-pkgs,.gjf-items{grid-template-columns:1fr}
  .gjf-row{grid-template-columns:minmax(0,1fr) 78px 84px}
  .gjf-submit .lp-btn{flex:1;min-width:0}
  .gje{padding:24px 18px}
  .gje .total b{font-size:32px}
}

/* =====================================================================
   예약확인 · 견적확인 목록 (gonjiam_ledger) · 상세 (gonjiam_view)
   ===================================================================== */
#gjl,#gjv{max-width:1180px;margin:0 auto 60px}
.lp-head{padding-bottom:6px;margin-bottom:30px}
.lp-head .lp-title{margin-top:10px}
.lp-desc{margin-top:10px !important;max-width:640px;font-size:14px;line-height:1.85;color:var(--lp-stone)}
.lp-crumb{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
.lp-label{font-family:var(--lp-serif);font-style:italic;font-size:16px;color:var(--lp-taupe)}
.lp .num{font-family:var(--lp-serif);font-weight:500}
.lp-btn.line{border-color:var(--lp-line2);color:var(--lp-stone) !important}
.lp-btn.line:hover{border-color:var(--lp-ink);background:transparent;color:var(--lp-ink) !important}
.lp-btn.soft{background:var(--lp-oat);border-color:var(--lp-oat);color:var(--lp-ink) !important}
.lp-btn.soft:hover{background:var(--lp-sand);border-color:var(--lp-sand)}
.lp-chk{width:16px;height:16px;margin:0;accent-color:var(--lp-ink);cursor:pointer}
.lp-seg{display:flex;flex-wrap:wrap;gap:6px}
.lp-seg span{display:inline-block;padding:8px 18px;border:1px solid var(--lp-line);font-size:13px;color:var(--lp-stone)}
.lp-state{display:inline-flex;align-items:center;gap:7px;height:30px;padding:0 14px;font-size:12px;font-weight:600;letter-spacing:.06em;white-space:nowrap}
.lp-state::before{content:"";width:5px;height:5px;border-radius:50%;background:currentColor}
.lp-state.done{background:var(--lp-ink);color:var(--lp-ivory)}
.lp-state.wait{border:1px solid var(--lp-line2);color:var(--lp-taupe);background:#fff}
.lp-ledger{width:100%;border-collapse:collapse;border-top:1px solid var(--lp-ink)}
.lp-ledger thead th{padding:15px 10px;border-bottom:1px solid var(--lp-line);font-family:var(--lp-serif);font-style:italic;font-size:15px;font-weight:400;color:var(--lp-taupe);text-align:center;white-space:nowrap;background:transparent}
.lp-ledger thead th a{color:inherit !important}
.lp-ledger tbody td{padding:18px 10px;border-bottom:1px solid var(--lp-sand);text-align:center;vertical-align:middle;font-size:14px;color:var(--lp-ink2)}
.lp-ledger tbody tr{transition:background .2s}
.lp-ledger tbody tr:hover{background:var(--lp-oat)}
.lp-ledger .n{font-family:var(--lp-serif);font-size:17px;color:var(--lp-taupe)}
.lp-ledger .who a{font-family:var(--lp-kr);font-size:15px;font-weight:500;color:var(--lp-ink) !important}
.lp-ledger .lock{width:13px;height:13px;margin-left:6px;vertical-align:-1px;color:var(--lp-camel)}
.lp-ledger .cmt{margin-left:6px;font-size:12px;color:var(--lp-camel-d)}
.lp-ledger .d{font-family:var(--lp-serif);font-size:18px;font-weight:600;letter-spacing:.04em;color:var(--lp-ink) !important}
.lp-ledger .m{color:var(--lp-taupe);font-size:13px}
.lp-ledger tr.notice td{background:#fbf7f0}
.lp-ledger .empty{padding:70px 20px !important;color:var(--lp-taupe)}
.lp-ledger .empty b{display:block;font-family:var(--lp-serif);font-style:italic;font-size:22px;font-weight:400;color:var(--lp-camel);margin-bottom:6px}
.lp-tools{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;margin-top:22px}
.lp-tools > div{display:flex;flex-wrap:wrap;gap:6px}
.lp-paging{display:flex;justify-content:center;margin:40px 0 8px}
.lp-paging .pagination,.lp-paging .pg{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;margin:0;padding:0}
.lp-paging li{display:block;list-style:none}
.lp-paging a,.lp-paging strong,.lp-paging .pg_current,.lp-paging li > span{display:inline-flex !important;align-items:center;justify-content:center;min-width:40px;height:40px;padding:0 12px !important;border:1px solid var(--lp-line) !important;border-radius:0 !important;background:#fff !important;color:var(--lp-stone) !important;font-family:var(--lp-serif);font-size:16px;float:none !important;margin:0 !important;text-decoration:none !important}
.lp-paging li.active a,.lp-paging strong,.lp-paging .pg_current{background:var(--lp-ink) !important;border-color:var(--lp-ink) !important;color:var(--lp-ivory) !important}
.lp-search{display:flex;justify-content:center;margin-top:24px}
.lp-search form{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;padding:14px;background:var(--lp-oat)}
.lp-in,.lp-search select{height:44px;border:1px solid var(--lp-line);border-radius:0;background:#fff;padding:0 14px;font-size:14px;color:var(--lp-ink);outline:none}
.lp-in.dt{width:136px;text-align:center}
.lp-in.kw{width:200px}
.lp-search .t{color:var(--lp-taupe)}
.lp-search button{height:44px;padding:0 26px;border:0;background:var(--lp-ink);color:var(--lp-ivory);font-size:13.5px;letter-spacing:.08em;cursor:pointer}
.lp-search button:hover{background:var(--lp-camel-d)}
/* 상세 */
.lp-dl{margin:0;border-top:1px solid var(--lp-ink)}
.lp-dl > div{display:grid;grid-template-columns:200px minmax(0,1fr);gap:24px;padding:20px 0;border-bottom:1px solid var(--lp-sand)}
.lp-dl dt{font-family:var(--lp-serif);font-style:italic;font-size:17px;font-weight:400;color:var(--lp-camel)}
.lp-dl dt small{display:block;font-family:var(--lp-sans);font-style:normal;font-size:12px;color:var(--lp-taupe);margin-top:2px}
.lp-dl dd{margin:0;font-size:14.5px;line-height:1.75;color:var(--lp-ink)}
.lp-dl .big{font-family:var(--lp-serif);font-size:26px;font-weight:600;letter-spacing:.02em}
.lp-dl .chips{display:flex;flex-wrap:wrap;gap:6px}
.lp-dl .chips span{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border:1px solid var(--lp-line);background:#fff;font-size:13px}
.lp-dl .chips b{font-weight:600;color:var(--lp-camel-d)}
.lp-dl .none{font-size:13px;color:var(--lp-taupe)}
.lp-dl select{height:42px;border:1px solid var(--lp-line);padding:0 12px;font-size:14px;background:#fff}
.lp-content{font-size:14px;line-height:1.85;color:var(--lp-stone);white-space:normal;word-break:break-all}
.lp-content img{max-width:100% !important;height:auto !important}
.lp-cmt textarea{border-radius:0 !important}
@media (max-width:760px){
  .lp-ledger,.lp-ledger tbody,.lp-ledger tr,.lp-ledger td{display:block;width:100%}
  .lp-ledger thead{display:none}
  .lp-ledger tbody tr{position:relative;display:grid;grid-template-columns:1fr auto;gap:4px 10px;padding:16px 4px;border-bottom:1px solid var(--lp-sand)}
  .lp-ledger tbody td{padding:0;border:0;text-align:left}
  .lp-ledger .c-chk{position:absolute;right:4px;bottom:16px;width:auto}
  .lp-ledger .c-n{grid-column:1;font-size:13px}
  .lp-ledger .c-st{grid-column:2;grid-row:1 / span 2;align-self:center}
  .lp-ledger .c-who{grid-column:1}
  .lp-ledger .c-d,.lp-ledger .c-t,.lp-ledger .c-r{grid-column:1 / -1;display:flex;gap:10px;align-items:baseline}
  .lp-ledger td[data-l]::before{content:attr(data-l);flex:0 0 58px;font-size:11.5px;color:var(--lp-taupe)}
  .lp-dl > div{grid-template-columns:1fr;gap:6px;padding:16px 0}
  .lp-search form{width:100%}
  .lp-in.dt{flex:1;width:auto;min-width:0}
  .lp-search select,.lp-in.kw,.lp-search button{flex:1 1 100%;width:100%}
}

/* 견적 패널이 있는 화면에서는 오른쪽 플로팅 배너를 숨김 (금액 가림 방지) */
body.gje-has-bar .gx-float{display:none !important}

/* 선택창 높이 정렬 : 라벨이 두 줄이 되어도 선택창은 한 줄로 맞춤 */
.gjf-fields,.gjf-lift{align-items:end}
.gjf-f label{display:flex;flex-wrap:wrap;align-items:baseline;gap:0 6px;min-height:20px;line-height:1.4}
.gjf-f label .u{display:inline;margin-left:0;font-size:14px;white-space:nowrap}
.gjf-f label .u del{display:none}
.gjf-lift .gjf-cond,.gjf-fields + .gjf-cond{align-self:start}

/* 예약금 · 입금자 : 두 입력칸의 위·아래·좌우 줄 맞춤 ("원" 은 칸 안쪽 오른쪽에 두어 너비를 같게) */
.gjf-fields.gjf-top{align-items:start}
.gjf-fields.gjf-top .gjf-won{position:relative;display:block}
.gjf-fields.gjf-top .gjf-won .gjf-in{width:100%;padding-right:44px;box-sizing:border-box}
.gjf-fields.gjf-top .gjf-won span{position:absolute;right:16px;top:50%;transform:translateY(-50%);pointer-events:none}
