@charset "utf-8";

/* =========================================================
   체크점빵 쇼핑몰 분류 목록
   파일 위치: /css/shop-no-skin.css
========================================================= */

/* 목록 전체 */
.shop-list-page{padding:0 0 150px; color:var(--shop-ink); background:var(--shop-bg);}
.shop-list-page *{box-sizing:border-box;}
.shop-list-page__inner{width:min(1280px, calc(100% - 48px)); margin:0 auto; padding-top:42px;}

/* 관리자 플로팅 버튼 */
.shop-admin-link{position:fixed; z-index:100; left:24px; bottom:24px;}
.shop-admin-link__button{display:flex; align-items:center; gap:8px; min-height:44px; padding:0 16px; border-radius:999px; color:#fff; background:var(--shop-navy); box-shadow:0 10px 28px rgba(0,0,0,.2); font-size:13px; font-weight:800;}
.shop-admin-link__button > span:first-child{font-size:17px; transition:transform .25s ease;}
.shop-admin-link__button:hover > span:first-child{transform:rotate(90deg);}

/* 브레드크럼 */
.shop-breadcrumb{display:flex; flex-wrap:wrap; align-items:center; gap:9px; margin-bottom:54px; color:#87919a; font-size:13px;}
.shop-breadcrumb a{color:inherit; transition:color .2s ease;}
.shop-breadcrumb a:hover{color:var(--shop-blue);}
.shop-breadcrumb a:last-child{color:var(--shop-ink); font-weight:700;}

/* 카테고리 제목 */
.shop-list-heading{display:flex; align-items:flex-end; justify-content:space-between; gap:40px; padding-bottom:50px; border-bottom:1px solid var(--shop-line);}
.shop-list-heading__eyebrow{margin:0 0 13px; color:var(--shop-blue); font-size:12px; font-weight:900; letter-spacing:.16em;}
.shop-list-heading h1{margin:0; color:var(--shop-ink); font-size:clamp(38px, 4vw, 58px); font-weight:800; line-height:1.12; letter-spacing:-.05em;}
.shop-list-heading__description{max-width:640px; margin:18px 0 0; color:var(--shop-muted); font-size:16px; line-height:1.75;}
.shop-list-heading__description p{margin:0;}
.shop-list-heading__count{flex:0 0 auto; display:flex; align-items:flex-end; gap:9px; margin:0; color:var(--shop-muted);}
.shop-list-heading__count strong{color:var(--shop-mint); font-size:58px; font-weight:800; line-height:.85; letter-spacing:-.05em;}
.shop-list-heading__count span{font-size:12px; font-weight:800; letter-spacing:.12em;}

/* 정렬 */
.shop-list-toolbar{display:flex; align-items:center; justify-content:space-between; gap:30px; padding:28px 0 24px;}
.shop-list-count{margin:0; color:var(--shop-muted); font-size:14px;}
.shop-list-count strong{color:var(--shop-ink); font-weight:800;}
.shop-list-sort{display:flex; flex-wrap:wrap; justify-content:flex-end; gap:7px;}
.shop-list-sort a{padding:9px 13px; border:1px solid transparent; border-radius:999px; color:#7a858e; font-size:13px; font-weight:700; transition:.18s ease;}
.shop-list-sort a:hover{color:var(--shop-blue); background:#eaf3f4;}
.shop-list-sort a.is-active{border-color:var(--shop-navy); color:#fff; background:var(--shop-navy);}

/* 상품 카드 */
.shop-product-grid{display:grid; grid-template-columns:repeat(4, minmax(0, 1fr)); gap:54px 24px;}
.shop-product-card{min-width:0;}
.shop-product-card__image{position:relative; display:block; aspect-ratio:1/1; overflow:hidden; border-radius:20px; background:#e8edef; box-shadow:0 8px 24px rgba(10,35,48,.06);}
.shop-product-card__image img{width:100% !important; height:100% !important; display:block; object-fit:cover; transition:transform .55s cubic-bezier(.2,.7,.2,1);}
.shop-product-card__image::after{content:""; position:absolute; inset:0; background:linear-gradient(180deg, transparent 55%, rgba(4,17,27,.5) 100%); opacity:0; transition:opacity .3s ease;}
.shop-product-card__image:hover img{transform:scale(1.045);}
.shop-product-card__image:hover::after{opacity:1;}
.shop-product-card__more{position:absolute; z-index:2; right:18px; bottom:17px; color:#fff; font-size:11px; font-weight:900; letter-spacing:.12em; opacity:0; transform:translateY(8px); transition:.25s ease;}
.shop-product-card__image:hover .shop-product-card__more{opacity:1; transform:translateY(0);}
.shop-product-card__badge{position:absolute; z-index:3; top:15px; left:15px; min-width:48px; height:48px; display:grid; place-items:center; padding:0 9px; border-radius:50%; color:#fff; background:var(--shop-navy); font-size:12px; font-weight:900;}
.shop-product-card__badge--sale{color:var(--shop-navy); background:var(--shop-mint);}
.shop-product-card__body{padding:19px 3px 0;}
.shop-product-card__code{margin:0 0 8px; color:#8a959d; font-size:10px; font-weight:800; letter-spacing:.08em;}
.shop-product-card h2{margin:0; font-size:18px; font-weight:800; line-height:1.45; letter-spacing:-.025em;}
.shop-product-card h2 a{display:block; color:var(--shop-ink); transition:color .18s ease;}
.shop-product-card h2 a:hover{color:var(--shop-blue);}
.shop-product-card__summary{display:-webkit-box; overflow:hidden; margin:8px 0 0; color:var(--shop-muted); font-size:13px; line-height:1.65; -webkit-line-clamp:2; -webkit-box-orient:vertical;}
.shop-product-card__price{display:flex; flex-wrap:wrap; align-items:center; gap:8px; margin-top:15px;}
.shop-product-card__price del{color:#9da6ad; font-size:12px;}
.shop-product-card__price strong{color:var(--shop-ink); font-size:19px; font-weight:900; letter-spacing:-.035em;}

/* 빈 목록 */
.shop-list-empty{display:flex; min-height:340px; flex-direction:column; align-items:center; justify-content:center; border:1px solid var(--shop-line); border-radius:24px; color:var(--shop-muted); background:#fff; text-align:center;}
.shop-list-empty > span{width:54px; height:54px; display:grid; place-items:center; margin-bottom:18px; border-radius:50%; color:var(--shop-blue); background:#eaf4f5; font-size:28px;}
.shop-list-empty strong{color:var(--shop-ink); font-size:19px;}
.shop-list-empty p{margin:9px 0 0; font-size:14px;}

/* 페이징 */
.shop-pagination{margin-top:72px; text-align:center;}
.shop-pagination .pg_wrap{display:inline-block;}
.shop-pagination .pg_page,.shop-pagination .pg_current{min-width:40px; height:40px; display:inline-grid; place-items:center; margin:0 3px; padding:0 10px; border:1px solid var(--shop-line); border-radius:50%; color:var(--shop-muted); background:#fff; font-size:13px;}
.shop-pagination .pg_current{border-color:var(--shop-navy); color:#fff; background:var(--shop-navy);}
.shop-list-footer-content{margin-top:80px; padding-top:50px; border-top:1px solid var(--shop-line);}

/* =========================================================
   마이페이지
========================================================= */
#smb_my{--my-primary:var(--green,#19764e);--my-primary-dark:#105b3a;--my-primary-light:#edf7f1;--my-text:#1c2420;--my-sub:#67716c;--my-line:#e3e8e5;--my-bg:#f6f8f7;--my-white:#fff;max-width:1280px;margin:0 auto;padding:80px 24px 120px;color:var(--my-text);}
#smb_my,#smb_my *{box-sizing:border-box;}
#smb_my a{color:inherit;text-decoration:none;}
#smb_my ul,#smb_my dl,#smb_my dd,#smb_my p{margin:0;padding:0;}
#smb_my ul{list-style:none;}

/* 페이지 타이틀 */
.mypage-head{margin-bottom:48px;text-align:center;}
.mypage-head__eyebrow{display:block;margin-bottom:12px;color:var(--my-primary);font-size:13px;font-weight:800;line-height:1;letter-spacing:.18em;}
.mypage-head h1{margin:0;color:var(--my-text);font-size:46px;font-weight:800;line-height:1.2;letter-spacing:-.04em;}
.mypage-head p{margin-top:14px;color:var(--my-sub);font-size:16px;line-height:1.7;}

/* 공통 섹션 */
#smb_my > section{position:relative;margin-top:32px;padding:36px;border:1px solid var(--my-line);border-radius:22px;background:var(--my-white);box-shadow:0 10px 36px rgba(25,49,37,.06);}
#smb_my > section > h2{margin:0 0 28px;color:var(--my-text);font-size:25px;font-weight:800;line-height:1.35;letter-spacing:-.035em;}
#smb_my > section > h2::after{display:block;width:34px;height:3px;margin-top:12px;border-radius:999px;background:var(--my-primary);content:"";}

/* 회원정보 개요 */
#smb_my_ov{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr);gap:24px 36px;}
#smb_my_ov > h2{grid-column:1/-1;margin-bottom:4px;}
#smb_my_ov .my_ov_name{grid-column:1;grid-row:2/4;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:230px;padding:32px;border-radius:18px;background:linear-gradient(145deg,var(--my-primary-light),#f9fcfa);color:var(--my-text);font-size:22px;font-weight:800;line-height:1.4;text-align:center;}
#smb_my_ov .my_ov_name img{display:block;width:86px;height:86px;margin:0 auto 18px;border:5px solid rgba(255,255,255,.9);border-radius:50%;object-fit:cover;box-shadow:0 8px 24px rgba(21,82,53,.15);}
#smb_my_ov .my_ov_name .profile_img{display:flex;align-items:center;justify-content:center;margin-bottom:18px;}
#smb_my_ov .my_ov_name .profile_img img{margin:0;}

/* 포인트·쿠폰 */
#smb_my_ov .cou_pt{grid-column:2;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:hidden;border:1px solid var(--my-line);border-radius:18px;background:#fff;}
#smb_my_ov .cou_pt dt,#smb_my_ov .cou_pt dd{display:flex;align-items:center;justify-content:center;}
#smb_my_ov .cou_pt dt{min-height:52px;background:var(--my-bg);color:var(--my-sub);font-size:14px;font-weight:700;}
#smb_my_ov .cou_pt dd{min-height:74px;color:var(--my-text);font-size:22px;font-weight:800;}
#smb_my_ov .cou_pt dt:nth-of-type(1),#smb_my_ov .cou_pt dd:nth-of-type(1){border-right:1px solid var(--my-line);}
#smb_my_ov .cou_pt dd a{margin-right:4px;color:var(--my-primary);font-size:28px;font-weight:900;}
#smb_my_ov .cou_pt dd a:hover{text-decoration:underline;text-underline-offset:4px;}

/* 회원 메뉴 */
#smb_my_act{grid-column:2;}
#smb_my_act ul{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;}
#smb_my_act li{min-width:0;}
#smb_my_act a{display:flex;align-items:center;justify-content:center;width:100%;min-height:50px;padding:10px 14px;border:1px solid var(--my-line);border-radius:12px;background:#fff;color:#35413b;font-size:14px;font-weight:700;transition:border-color .2s ease,background-color .2s ease,color .2s ease,transform .2s ease;}
#smb_my_act a:hover{border-color:var(--my-primary);background:var(--my-primary-light);color:var(--my-primary);transform:translateY(-2px);}
#smb_my_act .btn_admin{border-color:var(--my-primary);background:var(--my-primary);color:#fff;}
#smb_my_act .btn_admin:hover{border-color:var(--my-primary-dark);background:var(--my-primary-dark);color:#fff;}
#smb_my_act a[href*="member_leave"]{border-color:#f0dddd;color:#a84545;}
#smb_my_act a[href*="member_leave"]:hover{border-color:#ca5a5a;background:#fff3f3;color:#a22f2f;}

/* 상세 회원정보 */
#smb_my_ov .op_area{grid-column:1/-1;display:grid;grid-template-columns:150px minmax(0,1fr) 150px minmax(0,1fr);overflow:hidden;margin-top:8px;border-top:1px solid var(--my-line);border-left:1px solid var(--my-line);border-radius:14px;}
#smb_my_ov .op_area dt,#smb_my_ov .op_area dd{display:flex;align-items:center;min-height:58px;padding:14px 18px;border-right:1px solid var(--my-line);border-bottom:1px solid var(--my-line);}
#smb_my_ov .op_area dt{background:var(--my-bg);color:#46514b;font-size:14px;font-weight:800;}
#smb_my_ov .op_area dd{min-width:0;background:#fff;color:var(--my-sub);font-size:14px;line-height:1.65;word-break:break-all;}
#smb_my_ov .op_area #smb_my_ovaddt{grid-column:1;}
#smb_my_ov .op_area #smb_my_ovaddd{grid-column:2/-1;}

/* 상세정보 열기 버튼 */
#smb_my_ov .my_ov_btn{grid-column:1/-1;display:flex;justify-content:center;margin-top:-12px;}
#smb_my_ov .btn_op_area{display:flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:1px solid var(--my-line);border-radius:50%;background:#fff;color:var(--my-primary);font-size:16px;cursor:pointer;box-shadow:0 5px 16px rgba(20,53,37,.08);transition:background-color .2s ease,color .2s ease,transform .2s ease;}
#smb_my_ov .btn_op_area:hover{background:var(--my-primary);color:#fff;transform:translateY(-2px);}

/* 최근 주문내역 */
#smb_my_od{overflow:hidden;}
#smb_my_od .tbl_wrap,#smb_my_od .tbl_head01,#smb_my_od .tbl_head02{overflow-x:auto;width:100%;border:0;}
#smb_my_od table{width:100%;min-width:820px;border-spacing:0;border-collapse:collapse;border-top:2px solid var(--my-text);}
#smb_my_od thead th{height:58px;padding:14px 12px;border:0;border-bottom:1px solid var(--my-line);background:var(--my-bg);color:#3f4a44;font-size:13px;font-weight:800;text-align:center;white-space:nowrap;}
#smb_my_od tbody td{height:66px;padding:15px 12px;border:0;border-bottom:1px solid var(--my-line);background:#fff;color:var(--my-sub);font-size:14px;line-height:1.55;text-align:center;}
#smb_my_od tbody tr:hover td{background:#fbfdfc;}
#smb_my_od tbody td a{color:var(--my-text);font-weight:700;}
#smb_my_od tbody td a:hover{color:var(--my-primary);text-decoration:underline;text-underline-offset:3px;}
#smb_my_od .td_left{text-align:left;}
#smb_my_od .td_num,#smb_my_od .td_numbig,#smb_my_od .td_mng{text-align:center;}
#smb_my_od .empty_table,#smb_my_od .empty_li{padding:70px 20px!important;color:#8a938f!important;font-size:15px!important;text-align:center!important;}

/* 주문상태 버튼 */
#smb_my_od .status,#smb_my_od .od_status{display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:5px 10px;border-radius:999px;background:var(--my-primary-light);color:var(--my-primary);font-size:12px;font-weight:800;}

/* 더보기 */
#smb_my .smb_my_more{display:flex;justify-content:center;margin-top:28px;}
#smb_my .smb_my_more a{display:inline-flex;align-items:center;justify-content:center;min-width:130px;height:48px;padding:0 24px;border:1px solid var(--my-line);border-radius:999px;background:#fff;color:#36413c;font-size:14px;font-weight:800;transition:border-color .2s ease,background-color .2s ease,color .2s ease;}
#smb_my .smb_my_more a::after{margin-left:10px;font-size:17px;line-height:1;content:"→";}
#smb_my .smb_my_more a:hover{border-color:var(--my-primary);background:var(--my-primary);color:#fff;}

/* 위시리스트 */
#smb_my_wish .list_02 > ul{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;}
#smb_my_wish .list_02 > ul > li{position:relative;min-width:0;overflow:hidden;border:1px solid var(--my-line);border-radius:16px;background:#fff;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease;}
#smb_my_wish .list_02 > ul > li:not(.empty_li):hover{border-color:#bfd5c8;box-shadow:0 12px 26px rgba(24,69,47,.1);transform:translateY(-4px);}
#smb_my_wish .smb_my_img{position:relative;overflow:hidden;aspect-ratio:1/1;background:var(--my-bg);}
#smb_my_wish .smb_my_img a{display:block;width:100%;height:100%;}
#smb_my_wish .smb_my_img img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s ease;}
#smb_my_wish li:hover .smb_my_img img{transform:scale(1.04);}
#smb_my_wish .smb_my_tit{padding:18px 18px 8px;}
#smb_my_wish .smb_my_tit a{display:-webkit-box;overflow:hidden;color:var(--my-text);font-size:15px;font-weight:800;line-height:1.55;text-overflow:ellipsis;-webkit-box-orient:vertical;-webkit-line-clamp:2;}
#smb_my_wish .smb_my_tit a:hover{color:var(--my-primary);}
#smb_my_wish .smb_my_date{padding:0 18px 18px;color:#929a96;font-size:12px;line-height:1.4;}
#smb_my_wish .empty_li{grid-column:1/-1;display:flex;align-items:center;justify-content:center;min-height:180px;border:1px dashed #d7ded9!important;background:var(--my-bg)!important;color:#8a938f;font-size:15px;}

/* 팝업 링크 */
#smb_my .win_point,#smb_my .win_coupon,#smb_my .win_memo{cursor:pointer;}

/* 목록 전체 */
.shop-list-page{padding:0 0 150px; color:var(--shop-ink); background:var(--shop-bg);}
.shop-list-page *{box-sizing:border-box;}
.shop-list-page__inner{width:min(1280px, calc(100% - 48px)); margin:0 auto; padding-top:42px;}

/* 관리자 플로팅 버튼 */
.shop-admin-link{position:fixed; z-index:100; left:24px; bottom:24px;}
.shop-admin-link__button{display:flex; align-items:center; gap:8px; min-height:44px; padding:0 16px; border-radius:999px; color:#fff; background:var(--shop-navy); box-shadow:0 10px 28px rgba(0,0,0,.2); font-size:13px; font-weight:800;}
.shop-admin-link__button > span:first-child{font-size:17px; transition:transform .25s ease;}
.shop-admin-link__button:hover > span:first-child{transform:rotate(90deg);}

/* 브레드크럼 */
.shop-breadcrumb{display:flex; flex-wrap:wrap; align-items:center; gap:9px; margin-bottom:54px; color:#87919a; font-size:13px;}
.shop-breadcrumb a{color:inherit; transition:color .2s ease;}
.shop-breadcrumb a:hover{color:var(--shop-blue);}
.shop-breadcrumb a:last-child{color:var(--shop-ink); font-weight:700;}

/* 카테고리 제목 */
.shop-list-heading{display:flex; align-items:flex-end; justify-content:space-between; gap:40px; padding-bottom:50px; border-bottom:1px solid var(--shop-line);}
.shop-list-heading__eyebrow{margin:0 0 13px; color:var(--shop-blue); font-size:12px; font-weight:900; letter-spacing:.16em;}
.shop-list-heading h1{margin:0; color:var(--shop-ink); font-size:clamp(38px, 4vw, 58px); font-weight:800; line-height:1.12; letter-spacing:-.05em;}
.shop-list-heading__description{max-width:640px; margin:18px 0 0; color:var(--shop-muted); font-size:16px; line-height:1.75;}
.shop-list-heading__description p{margin:0;}
.shop-list-heading__count{flex:0 0 auto; display:flex; align-items:flex-end; gap:9px; margin:0; color:var(--shop-muted);}
.shop-list-heading__count strong{color:var(--shop-mint); font-size:58px; font-weight:800; line-height:.85; letter-spacing:-.05em;}
.shop-list-heading__count span{font-size:12px; font-weight:800; letter-spacing:.12em;}

/* 정렬 */
.shop-list-toolbar{display:flex; align-items:center; justify-content:space-between; gap:30px; padding:28px 0 24px;}
.shop-list-count{margin:0; color:var(--shop-muted); font-size:14px;}
.shop-list-count strong{color:var(--shop-ink); font-weight:800;}
.shop-list-sort{display:flex; flex-wrap:wrap; justify-content:flex-end; gap:7px;}
.shop-list-sort a{padding:9px 13px; border:1px solid transparent; border-radius:999px; color:#7a858e; font-size:13px; font-weight:700; transition:.18s ease;}
.shop-list-sort a:hover{color:var(--shop-blue); background:#eaf3f4;}
.shop-list-sort a.is-active{border-color:var(--shop-navy); color:#fff; background:var(--shop-navy);}

/* 상품 카드 */
.shop-product-grid{display:grid; grid-template-columns:repeat(4, minmax(0, 1fr)); gap:54px 24px;}
.shop-product-card{min-width:0;}
.shop-product-card__image{position:relative; display:block; aspect-ratio:1/1; overflow:hidden; border-radius:20px; background:#e8edef; box-shadow:0 8px 24px rgba(10,35,48,.06);}
.shop-product-card__image img{width:100% !important; height:100% !important; display:block; object-fit:cover; transition:transform .55s cubic-bezier(.2,.7,.2,1);}
.shop-product-card__image::after{content:""; position:absolute; inset:0; background:linear-gradient(180deg, transparent 55%, rgba(4,17,27,.5) 100%); opacity:0; transition:opacity .3s ease;}
.shop-product-card__image:hover img{transform:scale(1.045);}
.shop-product-card__image:hover::after{opacity:1;}
.shop-product-card__more{position:absolute; z-index:2; right:18px; bottom:17px; color:#fff; font-size:11px; font-weight:900; letter-spacing:.12em; opacity:0; transform:translateY(8px); transition:.25s ease;}
.shop-product-card__image:hover .shop-product-card__more{opacity:1; transform:translateY(0);}
.shop-product-card__badge{position:absolute; z-index:3; top:15px; left:15px; min-width:48px; height:48px; display:grid; place-items:center; padding:0 9px; border-radius:50%; color:#fff; background:var(--shop-navy); font-size:12px; font-weight:900;}
.shop-product-card__badge--sale{color:var(--shop-navy); background:var(--shop-mint);}
.shop-product-card__body{padding:19px 3px 0;}
.shop-product-card__code{margin:0 0 8px; color:#8a959d; font-size:10px; font-weight:800; letter-spacing:.08em;}
.shop-product-card h2{margin:0; font-size:18px; font-weight:800; line-height:1.45; letter-spacing:-.025em;}
.shop-product-card h2 a{display:block; color:var(--shop-ink); transition:color .18s ease;}
.shop-product-card h2 a:hover{color:var(--shop-blue);}
.shop-product-card__summary{display:-webkit-box; overflow:hidden; margin:8px 0 0; color:var(--shop-muted); font-size:13px; line-height:1.65; -webkit-line-clamp:2; -webkit-box-orient:vertical;}
.shop-product-card__price{display:flex; flex-wrap:wrap; align-items:center; gap:8px; margin-top:15px;}
.shop-product-card__price del{color:#9da6ad; font-size:12px;}
.shop-product-card__price strong{color:var(--shop-ink); font-size:19px; font-weight:900; letter-spacing:-.035em;}

/* 빈 목록 */
.shop-list-empty{display:flex; min-height:340px; flex-direction:column; align-items:center; justify-content:center; border:1px solid var(--shop-line); border-radius:24px; color:var(--shop-muted); background:#fff; text-align:center;}
.shop-list-empty > span{width:54px; height:54px; display:grid; place-items:center; margin-bottom:18px; border-radius:50%; color:var(--shop-blue); background:#eaf4f5; font-size:28px;}
.shop-list-empty strong{color:var(--shop-ink); font-size:19px;}
.shop-list-empty p{margin:9px 0 0; font-size:14px;}

/* 페이징 */
.shop-pagination{margin-top:72px; text-align:center;}
.shop-pagination .pg_wrap{display:inline-block;}
.shop-pagination .pg_page,.shop-pagination .pg_current{min-width:40px; height:40px; display:inline-grid; place-items:center; margin:0 3px; padding:0 10px; border:1px solid var(--shop-line); border-radius:50%; color:var(--shop-muted); background:#fff; font-size:13px;}
.shop-pagination .pg_current{border-color:var(--shop-navy); color:#fff; background:var(--shop-navy);}
.shop-list-footer-content{margin-top:80px; padding-top:50px; border-top:1px solid var(--shop-line);}

@media (max-width:1100px){
    .shop-product-grid{grid-template-columns:repeat(3, minmax(0, 1fr));}
}

@media (max-width:820px){
    .cj-subtop{min-height:520px;}
    .cj-subtop__container{width:min(100% - 32px, 1280px); padding:165px 0 34px;}
    .cj-subtop__shade{background:rgba(5,22,34,.67);}
    .cj-subtop__copy{font-size:14px;}
    .cj-subtop__tabs{margin-top:32px; padding-bottom:2px;}
    .cj-subtop__tabs a{min-width:auto; padding:11px 16px; font-size:13px;}
    .cj-subtop__scroll{display:none;}

    .shop-list-page{padding-bottom:100px;}
    .shop-list-page__inner{width:min(100% - 32px, 1280px); padding-top:30px;}
    .shop-breadcrumb{margin-bottom:38px;}
    .shop-list-heading{align-items:flex-start; padding-bottom:36px;}
    .shop-list-heading__count{display:none;}
    .shop-list-toolbar{align-items:flex-start; flex-direction:column; gap:15px; padding:22px 0 20px;}
    .shop-list-sort{justify-content:flex-start; overflow-x:auto; width:100%; flex-wrap:nowrap; padding-bottom:3px; scrollbar-width:none;}
    .shop-list-sort::-webkit-scrollbar{display:none;}
    .shop-list-sort a{flex:0 0 auto;}
    .shop-product-grid{grid-template-columns:repeat(2, minmax(0, 1fr)); gap:36px 14px;}
    .shop-product-card__image{border-radius:15px;}
    .shop-product-card__body{padding-top:14px;}
    .shop-product-card h2{font-size:16px;}
    .shop-product-card__summary{font-size:12px;}
    .shop-product-card__price{margin-top:11px;}
    .shop-product-card__price strong{font-size:17px;}
    .shop-product-card__more{display:none;}
    .shop-product-card__badge{top:10px; left:10px; min-width:42px; height:42px; font-size:11px;}
}

@media (max-width:480px){
    .cj-subtop{min-height:500px;}
    .cj-subtop h1{font-size:42px;}
    .cj-subtop__lead{font-size:18px;}
    .shop-list-heading h1{font-size:36px;}
    .shop-list-heading__description{font-size:14px;}
    .shop-admin-link{left:14px; bottom:14px;}
    .shop-admin-link__button{min-width:44px; padding:0 13px;}
    .shop-admin-link__button > span:last-child{display:none;}
}

/* =========================================================
   체크점빵 상품 상세
   /shop/item.php
========================================================= */

.shop-item-page{padding:0 0 140px; color:var(--shop-ink); background:#fff;}
.shop-item-page *{box-sizing:border-box;}
.shop-item-page__inner{width:min(1280px, calc(100% - 48px)); margin:0 auto; padding-top:38px;}

/* 현재 위치 */
.shop-item-breadcrumb{display:flex; flex-wrap:wrap; align-items:center; gap:9px; margin-bottom:38px; color:#8a949c; font-size:13px;}
.shop-item-breadcrumb a{color:inherit; transition:color .18s ease;}
.shop-item-breadcrumb a:hover{color:var(--shop-blue);}
.shop-item-breadcrumb a:last-child{color:var(--shop-ink); font-weight:700;}

/* 상품 상단 */
.shop-item-overview{display:grid; grid-template-columns:minmax(0, 1.05fr) minmax(420px, .82fr); gap:72px; align-items:start; padding-bottom:90px;}
.shop-item-gallery{min-width:0;}
.shop-item-gallery__stage{position:relative; aspect-ratio:1/1; overflow:hidden; border-radius:28px; background:#edf1f2;}
.shop-item-gallery__figure{position:absolute; inset:0; margin:0; opacity:0; visibility:hidden; transform:scale(.985); transition:opacity .28s ease, visibility .28s ease, transform .35s ease;}
.shop-item-gallery__figure.is-active{opacity:1; visibility:visible; transform:scale(1);}
.shop-item-gallery__large{position:relative; width:100%; height:100%; display:block; overflow:hidden;}
.shop-item-gallery__large img{width:100% !important; height:100% !important; display:block; object-fit:cover;}
.shop-item-gallery__zoom{position:absolute; right:22px; bottom:22px; width:48px; height:48px; display:grid; place-items:center; border-radius:50%; color:#fff; background:rgba(6,28,43,.82); backdrop-filter:blur(8px); font-size:24px; line-height:1; transition:transform .2s ease, background .2s ease;}
.shop-item-gallery__large:hover .shop-item-gallery__zoom{transform:rotate(90deg); background:var(--shop-navy);}
.shop-item-gallery__state{position:absolute; z-index:3; top:20px; left:20px; min-width:74px; height:74px; display:grid; place-items:center; padding:0 12px; border-radius:50%; color:#fff; background:var(--shop-navy); font-size:12px; font-weight:900; letter-spacing:.04em;}
.shop-item-gallery__state--sale{color:var(--shop-navy); background:var(--shop-mint);}
.shop-item-gallery__thumbs{display:grid; grid-template-columns:repeat(6, minmax(0, 1fr)); gap:10px; margin-top:14px;}
.shop-item-gallery__thumb{position:relative; aspect-ratio:1/1; overflow:hidden; padding:0; border:1px solid transparent; border-radius:12px; background:#edf1f2; cursor:pointer; transition:border-color .2s ease, opacity .2s ease;}
.shop-item-gallery__thumb img{width:100% !important; height:100% !important; display:block; object-fit:cover;}
.shop-item-gallery__thumb:not(.is-active){opacity:.58;}
.shop-item-gallery__thumb:hover,.shop-item-gallery__thumb.is-active{border-color:var(--shop-navy); opacity:1;}

/* 구매 패널 */
.shop-item-order{position:sticky; top:24px; min-width:0; padding:4px 0 0;}
.shop-item-order__top{padding-bottom:30px; border-bottom:1px solid var(--shop-line);}
.shop-item-order__meta{display:flex; align-items:center; gap:10px; margin-bottom:18px; color:#81909a; font-size:11px; font-weight:800; letter-spacing:.12em;}
.shop-item-order__meta span + span::before{content:""; width:3px; height:3px; display:inline-block; margin:0 10px 3px 0; border-radius:50%; background:var(--shop-mint);}
.shop-item-order h1{margin:0; color:var(--shop-ink); font-size:clamp(34px, 3vw, 48px); font-weight:900; line-height:1.2; letter-spacing:-.052em;}
.shop-item-order__summary{margin:16px 0 0; color:var(--shop-muted); font-size:15px; line-height:1.75;}
.shop-item-order__rating{display:flex; flex-wrap:wrap; align-items:center; gap:7px; margin-top:20px; color:#7d8992; font-size:13px;}
.shop-item-order__rating a{color:inherit;}
.shop-item-order__rating a:hover{color:var(--shop-blue);}
.shop-item-order__star{color:#f3aa28; font-size:15px;}
.shop-item-order__rating strong{color:var(--shop-ink);}
.shop-item-order__divider{width:1px; height:12px; margin:0 4px; background:var(--shop-line);}
.shop-item-order__price{display:flex; flex-wrap:wrap; align-items:flex-end; gap:12px; margin-top:28px;}
.shop-item-order__price > strong{color:var(--shop-ink); font-size:34px; font-weight:900; line-height:1; letter-spacing:-.045em;}
.shop-item-order__discount{display:flex; align-items:center; gap:8px; padding-bottom:3px;}
.shop-item-order__discount span{color:#e64a4a; font-size:19px; font-weight:900;}
.shop-item-order__discount del{color:#9ca5ac; font-size:14px;}

.shop-item-order__facts{margin:0; padding:24px 0; border-bottom:1px solid var(--shop-line);}
.shop-item-order__facts > div{display:grid; grid-template-columns:105px minmax(0, 1fr); gap:18px; padding:7px 0;}
.shop-item-order__facts dt{color:#7c8790; font-size:13px;}
.shop-item-order__facts dd{margin:0; color:var(--shop-ink); font-size:13px; font-weight:700;}
.shop-item-order__facts select{width:100%; max-width:190px; height:38px; padding:0 34px 0 12px; border:1px solid var(--shop-line); border-radius:8px; color:var(--shop-ink); background:#fff; font-size:13px;}

/* 옵션 */
.shop-item-options{padding:22px 0 0;}
.shop-item-options h2,.shop-item-selected h2{margin:0 0 11px; color:var(--shop-ink); font-size:13px; font-weight:900;}
.shop-item-options .get_item_options,.shop-item-options .get_item_supply{display:grid; grid-template-columns:105px minmax(0, 1fr); align-items:center; gap:18px; margin-top:9px;}
.shop-item-options label{color:#7c8790; font-size:13px;}
.shop-item-options select{width:100%; height:48px; padding:0 42px 0 14px; border:1px solid var(--shop-line); border-radius:10px; color:var(--shop-ink); background:#fff; font-size:14px; transition:border-color .18s ease, box-shadow .18s ease;}
.shop-item-options select:focus{border-color:var(--shop-blue); outline:0; box-shadow:0 0 0 3px rgba(25,121,138,.1);}

.shop-item-selected{margin-top:22px; padding:17px; border-radius:14px; background:var(--shop-bg);}
.shop-item-selected > h2{margin-bottom:10px;}
#sit_opt_added{margin:0; padding:0; list-style:none;}
#sit_opt_added .sit_opt_list{display:grid; grid-template-columns:minmax(0, 1fr) auto; align-items:center; gap:18px; padding:12px 0; border-bottom:1px solid rgba(20,32,43,.08);}
#sit_opt_added .sit_opt_list:last-child{border-bottom:0;}
#sit_opt_added .opt_name{min-width:0;}
#sit_opt_added .sit_opt_subj{display:block; overflow:hidden; color:var(--shop-ink); font-size:13px; font-weight:800; text-overflow:ellipsis; white-space:nowrap;}
#sit_opt_added .opt_count{display:flex; align-items:center;}
#sit_opt_added .sit_qty_minus,#sit_opt_added .sit_qty_plus{width:34px; height:34px; display:grid; place-items:center; padding:0; border:1px solid var(--shop-line); color:var(--shop-ink); background:#fff; font-size:16px; cursor:pointer;}
#sit_opt_added .sit_qty_minus{border-radius:8px 0 0 8px;}
#sit_opt_added .sit_qty_plus{border-radius:0 8px 8px 0;}
#sit_opt_added .num_input{width:44px; height:34px; padding:0; border-top:1px solid var(--shop-line); border-right:0; border-bottom:1px solid var(--shop-line); border-left:0; color:var(--shop-ink); background:#fff; font-size:13px; font-weight:800; text-align:center;}
#sit_opt_added .sit_opt_prc{min-width:74px; margin-left:10px; color:var(--shop-ink); font-size:13px; font-weight:800; text-align:right;}
#sit_opt_added .sit_opt_del{width:28px; height:28px; margin-left:8px; border:0; border-radius:50%; color:#87929a; background:#e7ecee; cursor:pointer;}

.shop-item-total{display:flex; align-items:center; justify-content:flex-end; min-height:64px; margin-top:10px; padding:0 2px; color:#6e7982; font-size:14px;}
.shop-item-total strong{margin-left:12px; color:var(--shop-ink); font-size:28px; font-weight:900; letter-spacing:-.04em;}
.shop-item-order__notice{margin:20px 0 0; padding:15px 16px; border-radius:10px; color:#785b21; background:#fff7df; font-size:13px; line-height:1.6;}

/* 구매 버튼 */
.shop-item-actions{display:grid; grid-template-columns:1fr 1fr 54px; gap:9px; margin-top:18px;}
.shop-item-actions button{height:54px; padding:0 18px; border-radius:10px; font-size:14px; font-weight:900; cursor:pointer; transition:transform .18s ease, box-shadow .18s ease, background .18s ease;}
.shop-item-actions button:hover{transform:translateY(-2px);}
.shop-item-actions__cart{border:1px solid var(--shop-navy); color:var(--shop-navy); background:#fff;}
.shop-item-actions__buy{border:1px solid var(--shop-navy); color:#fff; background:var(--shop-navy);}
.shop-item-actions__buy:hover{box-shadow:0 12px 24px rgba(7,28,43,.2);}
.shop-item-actions__wish{padding:0 !important; border:1px solid var(--shop-line); color:var(--shop-navy); background:#fff; font-size:22px !important;}
.shop-item-restock{width:100%; height:52px; margin-top:10px; border:1px solid var(--shop-blue); border-radius:10px; color:var(--shop-blue); background:#fff; font-size:14px; font-weight:900; cursor:pointer;}
.shop-item-naverpay{margin-top:14px;}

/* 상세 메뉴 */
.shop-item-section-nav{position:sticky; z-index:10; top:0; display:grid; grid-template-columns:repeat(4, 1fr); margin-bottom:96px; border-top:1px solid var(--shop-line); border-bottom:1px solid var(--shop-line); background:rgba(255,255,255,.94); backdrop-filter:blur(12px);}
.shop-item-section-nav a{position:relative; min-height:66px; display:flex; align-items:center; justify-content:center; gap:6px; color:#75818a; font-size:14px; font-weight:800; transition:color .18s ease;}
.shop-item-section-nav a::after{content:""; position:absolute; right:0; bottom:-1px; left:0; height:2px; background:var(--shop-mint); transform:scaleX(0); transition:transform .2s ease;}
.shop-item-section-nav a:hover{color:var(--shop-navy);}
.shop-item-section-nav a:hover::after{transform:scaleX(1);}
.shop-item-section-nav span{color:var(--shop-blue);}

/* 상세 공통 */
.shop-item-content-section{scroll-margin-top:90px; padding-bottom:110px;}
.shop-item-content-section + .shop-item-content-section{padding-top:96px; border-top:1px solid var(--shop-line);}
.shop-item-content-section__heading{margin-bottom:44px;}
.shop-item-content-section__heading p{margin:0 0 10px; color:var(--shop-blue); font-size:11px; font-weight:900; letter-spacing:.17em;}
.shop-item-content-section__heading h2{margin:0; color:var(--shop-ink); font-size:36px; font-weight:900; line-height:1.2; letter-spacing:-.045em;}
.shop-item-content-section__heading--row{display:flex; align-items:flex-end; justify-content:space-between; gap:30px;}
.shop-item-description{max-width:1040px; margin:0 auto; color:#33414c; font-size:16px; line-height:1.85; text-align:left;}
.shop-item-description img{max-width:100% !important; height:auto !important; display:block; margin-right:auto; margin-left:auto;}
.shop-item-description iframe{max-width:100%;}
.shop-item-description table{max-width:100% !important;}
.shop-item-empty-content{min-height:190px; display:flex; align-items:center; justify-content:center; border:1px solid var(--shop-line); border-radius:18px; color:#89939b; background:var(--shop-bg); font-size:14px; text-align:center;}

/* 상품 정보 고시 */
.shop-item-info-table{margin-top:80px;}
.shop-item-info-table h3{margin:0 0 18px; color:var(--shop-ink); font-size:20px; font-weight:900;}
.shop-item-info-table dl{margin:0; border-top:2px solid var(--shop-navy);}
.shop-item-info-table dl > div{display:grid; grid-template-columns:260px minmax(0, 1fr); border-bottom:1px solid var(--shop-line);}
.shop-item-info-table dt,.shop-item-info-table dd{margin:0; padding:18px 20px; font-size:14px; line-height:1.65;}
.shop-item-info-table dt{color:#53616c; background:var(--shop-bg); font-weight:800;}
.shop-item-info-table dd{color:#394852;}

/* 후기·문의 */
.shop-item-review-score{display:flex; align-items:baseline; gap:8px;}
.shop-item-review-score > span{color:#f3aa28; font-size:19px;}
.shop-item-review-score strong{color:var(--shop-ink); font-size:32px; font-weight:900;}
.shop-item-review-score small{color:#849099; font-size:13px;}
.shop-item-board-list{border-top:2px solid var(--shop-navy);}
.shop-item-board-list article{display:grid; grid-template-columns:minmax(0, 1fr) 210px; gap:32px; padding:25px 18px; border-bottom:1px solid var(--shop-line);}
.shop-item-board-list__label{display:inline-flex; align-items:center; min-height:26px; margin-bottom:9px; padding:0 10px; border-radius:999px; color:var(--shop-blue); background:#eaf4f5; font-size:11px; font-weight:900;}
.shop-item-board-list h3{margin:0; color:var(--shop-ink); font-size:16px; font-weight:800;}
.shop-item-board-list p{margin:10px 0 0; color:var(--shop-muted); font-size:13px; line-height:1.65;}
.shop-item-board-list__meta{display:flex; align-items:center; justify-content:flex-end; gap:14px; color:#8b959d; font-size:12px;}
.shop-item-board-list__meta span{color:#5f6d77; font-weight:700;}
.shop-item-board-list--question .shop-item-board-list__label{color:#745f22; background:#fff4d8;}

/* 배송·교환 */
.shop-item-policy-grid{display:grid; grid-template-columns:1fr 1fr; gap:22px;}
.shop-item-policy-grid article{padding:32px; border:1px solid var(--shop-line); border-radius:18px; background:var(--shop-bg);}
.shop-item-policy-grid h3{margin:0 0 18px; color:var(--shop-ink); font-size:18px; font-weight:900;}
.shop-item-policy-grid article > div{color:#5f6d77; font-size:14px; line-height:1.8;}
.shop-item-policy-grid p{margin:0 0 10px;}

/* 관련상품 */
.shop-item-related{padding-top:96px; border-top:1px solid var(--shop-line);}
.shop-item-related__grid{display:grid; grid-template-columns:repeat(4, minmax(0, 1fr)); gap:24px;}
.shop-item-related__image{display:block; aspect-ratio:1/1; overflow:hidden; border-radius:18px; background:#edf1f2;}
.shop-item-related__image img{width:100% !important; height:100% !important; display:block; object-fit:cover; transition:transform .45s ease;}
.shop-item-related__image:hover img{transform:scale(1.045);}
.shop-item-related__body{padding:16px 2px 0;}
.shop-item-related__body p{margin:0 0 7px; color:#8a959d; font-size:10px; font-weight:900; letter-spacing:.1em;}
.shop-item-related__body h3{margin:0; font-size:16px; font-weight:800; line-height:1.45;}
.shop-item-related__body h3 a{color:var(--shop-ink);}
.shop-item-related__body strong{display:block; margin-top:11px; color:var(--shop-ink); font-size:17px; font-weight:900;}

/* 이전·다음 */
.shop-item-siblings{display:grid; grid-template-columns:1fr 1fr; gap:1px; margin-top:100px; border:1px solid var(--shop-line); border-radius:18px; overflow:hidden; background:var(--shop-line);}
.shop-item-siblings > a{min-height:118px; display:flex; flex-direction:column; justify-content:center; padding:26px 32px; background:#fff; transition:background .2s ease;}
.shop-item-siblings > a:hover{background:var(--shop-bg);}
.shop-item-siblings__next{align-items:flex-end; text-align:right;}
.shop-item-siblings span{margin-bottom:8px; color:var(--shop-blue); font-size:10px; font-weight:900; letter-spacing:.14em;}
.shop-item-siblings strong{max-width:100%; overflow:hidden; color:var(--shop-ink); font-size:15px; text-overflow:ellipsis; white-space:nowrap;}

/* 직접 입력한 상·하단 HTML */
.shop-item-custom-html{width:min(1280px, calc(100% - 48px)); margin:0 auto;}
.shop-item-custom-html--head{padding-top:30px;}
.shop-item-custom-html--tail{padding-bottom:80px;}

/* 상품 상세 구매 버튼 최종 보정 */
.shop-item-order .shop-item-actions{
    width:100%;
    display:grid !important;
    grid-template-columns:minmax(0, 1fr) minmax(0, 1.2fr) 56px !important;
    gap:10px !important;
    margin-top:24px;
}

.shop-item-order .shop-item-actions > button{
    position:relative;
    width:100%;
    height:58px !important;
    min-width:0;
    display:flex !important;
    align-items:center;
    justify-content:center;
    padding:0 16px !important;
    border-radius:10px !important;
    font-size:15px !important;
    font-weight:800 !important;
    line-height:1 !important;
    opacity:1 !important;
    visibility:visible !important;
    appearance:none;
    cursor:pointer;
    box-sizing:border-box;
}

/* 장바구니 */
.shop-item-order .shop-item-actions__cart{
    border:1px solid #10283e !important;
    color:#10283e !important;
    background:#fff !important;
}

.shop-item-order .shop-item-actions__cart:hover{
    color:#fff !important;
    background:#203c54 !important;
}

/* 구매하기 */
.shop-item-order .shop-item-actions__buy{
    border:1px solid #10283e !important;
    color:#fff !important;
    background:#10283e !important;
    box-shadow:0 10px 24px rgba(16,40,62,.16);
}

.shop-item-order .shop-item-actions__buy:hover{
    border-color:#193f5e !important;
    color:#fff !important;
    background:#193f5e !important;
    box-shadow:0 14px 30px rgba(16,40,62,.24);
}

/* 관심상품 */
.shop-item-order .shop-item-actions__wish{
    width:56px !important;
    padding:0 !important;
    border:1px solid #dce3e8 !important;
    color:#10283e !important;
    background:#fff !important;
    font-size:24px !important;
}

.shop-item-order .shop-item-actions__wish:hover{
    border-color:#10283e !important;
    color:#ef4f57 !important;
    background:#fff !important;
}

.site-header--shop-item .gnb-link,
.site-header--shop-item .header-tools button,
.site-header--shop-item .header-tools a{
    color:var(--cart-navy);
}

.site-header--shop-item .gnb-arrow{
    border-color:currentColor;
}

.site-header--shop-item .header-tools button{
    border-color:rgba(7,28,43,.18);
    background:#fff;
}

.site-header--shop-item .header-tools svg{
    color:currentColor;
    stroke:currentColor;
}

.site-header--shop-item .gnb-submenu{
    border-color:var(--cart-line);
    border-top-color:var(--cart-mint);
    background:rgba(255,255,255,.98);
    box-shadow:0 18px 40px rgba(7,28,43,.14);
}

.site-header--shop-item .gnb-sublink{
    color:#40505d;
}

/* 전체 */
.shop-cart-page{
    min-height:70vh;
    padding:58px 0 130px;
    color:var(--cart-ink);
    background:var(--cart-bg);
}

.shop-cart-page *{
    box-sizing:border-box;
}

.shop-cart-page__inner{
    width:min(1280px, calc(100% - 48px));
    margin:0 auto;
}

/* 상단 제목 */
.shop-cart-heading{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:48px;
    margin-bottom:42px;
}

.shop-cart-heading__copy > p{
    margin:0 0 12px;
    color:var(--cart-blue);
    font-size:12px;
    font-weight:900;
    letter-spacing:.18em;
}

.shop-cart-heading__copy h1{
    margin:0;
    color:var(--cart-ink);
    font-size:clamp(40px, 4vw, 58px);
    font-weight:900;
    line-height:1.1;
    letter-spacing:-.055em;
}

.shop-cart-heading__copy > span{
    display:block;
    margin-top:14px;
    color:var(--cart-muted);
    font-size:15px;
    line-height:1.7;
}

/* 주문 단계 */
.shop-order-steps{
    display:flex;
    align-items:center;
    gap:0;
    margin:0;
    padding:0;
    list-style:none;
}

.shop-order-steps li{
    position:relative;
    min-width:112px;
    padding-left:38px;
    color:#9aa4ab;
}

.shop-order-steps li + li::before{
    content:"";
    position:absolute;
    top:15px;
    left:0;
    width:28px;
    height:1px;
    background:#ccd4d8;
}

.shop-order-steps b{
    display:block;
    margin-bottom:4px;
    font-size:11px;
    font-weight:900;
    letter-spacing:.1em;
}

.shop-order-steps span{
    font-size:13px;
    font-weight:800;
    white-space:nowrap;
}

.shop-order-steps .is-active{
    color:var(--cart-navy);
}

.shop-order-steps .is-active b{
    color:var(--cart-blue);
}

/* 레이아웃 */
.shop-cart-layout{
    display:grid;
    grid-template-columns:minmax(0, 1fr) 360px;
    gap:28px;
    align-items:start;
}

.shop-cart-products,
.shop-cart-summary__box{
    border:1px solid var(--cart-line);
    border-radius:24px;
    background:#fff;
    box-shadow:0 12px 36px rgba(10,35,48,.05);
}

/* 목록 툴바 */
.shop-cart-products__toolbar{
    min-height:72px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:24px;
    padding:0 26px;
    border-bottom:1px solid var(--cart-line);
}

.shop-cart-check{
    display:inline-flex;
    align-items:center;
    gap:10px;
    color:var(--cart-ink);
    cursor:pointer;
}

.shop-cart-check input{
    position:absolute;
    width:1px;
    height:1px;
    overflow:hidden;
    clip:rect(0, 0, 0, 0);
}

.shop-cart-check > span{
    position:relative;
    width:22px;
    height:22px;
    flex:0 0 auto;
    border:1px solid #b9c4ca;
    border-radius:6px;
    background:#fff;
    transition:.18s ease;
}

.shop-cart-check > span::after{
    content:"";
    position:absolute;
    top:4px;
    left:7px;
    width:5px;
    height:9px;
    border-right:2px solid #fff;
    border-bottom:2px solid #fff;
    opacity:0;
    transform:rotate(45deg) scale(.7);
    transition:.18s ease;
}

.shop-cart-check input:checked + span{
    border-color:var(--cart-navy);
    background:var(--cart-navy);
}

.shop-cart-check input:checked + span::after{
    opacity:1;
    transform:rotate(45deg) scale(1);
}

.shop-cart-check input:focus-visible + span{
    outline:3px solid rgba(25,121,138,.18);
    outline-offset:2px;
}

.shop-cart-check b{
    font-size:14px;
    font-weight:900;
}

.shop-cart-check em{
    color:#8b969e;
    font-size:12px;
    font-style:normal;
    font-weight:700;
}

.shop-cart-delete-actions{
    display:flex;
    align-items:center;
    gap:8px;
}

.shop-cart-delete-actions button{
    height:34px;
    padding:0 12px;
    border:1px solid var(--cart-line);
    border-radius:8px;
    color:#75818a;
    background:#fff;
    font-size:12px;
    font-weight:800;
    cursor:pointer;
    transition:.18s ease;
}

.shop-cart-delete-actions button:hover{
    border-color:#aebac0;
    color:var(--cart-danger);
}

/* 상품 카드 */
.shop-cart-products__list{
    padding:0 26px;
}

.shop-cart-item{
    position:relative;
    display:grid;
    grid-template-columns:24px 152px minmax(0, 1fr) 174px;
    gap:22px;
    align-items:center;
    padding:28px 0;
}

.shop-cart-item + .shop-cart-item{
    border-top:1px solid var(--cart-line);
}

.shop-cart-item__check{
    align-self:start;
    padding-top:5px;
}

.shop-cart-item__image{
    display:block;
    aspect-ratio:1/1;
    overflow:hidden;
    border-radius:16px;
    background:#eef2f3;
}

.shop-cart-item__image img{
    width:100% !important;
    height:100% !important;
    display:block;
    object-fit:cover;
    transition:transform .35s ease;
}

.shop-cart-item__image:hover img{
    transform:scale(1.04);
}

.shop-cart-item__content{
    min-width:0;
}

.shop-cart-item__brand{
    margin:0 0 8px;
    color:var(--cart-blue);
    font-size:10px;
    font-weight:900;
    letter-spacing:.14em;
}

.shop-cart-item__content h2{
    margin:0;
    font-size:18px;
    font-weight:900;
    line-height:1.45;
    letter-spacing:-.03em;
}

.shop-cart-item__content h2 a{
    color:var(--cart-ink);
}

.shop-cart-item__content h2 a:hover{
    color:var(--cart-blue);
}

/* 영카트 print_item_options 출력 보정 */
.shop-cart-item__options{
    margin-top:13px;
    color:#60707b;
    font-size:13px;
    line-height:1.7;
}

.shop-cart-item__options ul,
.shop-cart-item__options ol{
    margin:0;
    padding:0;
    list-style:none;
}

.shop-cart-item__options li{
    position:relative;
    padding-left:12px;
}

.shop-cart-item__options li::before{
    content:"";
    position:absolute;
    top:.72em;
    left:0;
    width:4px;
    height:4px;
    border-radius:50%;
    background:var(--cart-mint);
}

.shop-cart-item__option-button{
    height:34px;
    margin-top:13px;
    padding:0 13px;
    border:1px solid var(--cart-line);
    border-radius:8px;
    color:var(--cart-navy);
    background:#fff;
    font-size:12px;
    font-weight:900;
    cursor:pointer;
    transition:.18s ease;
}

.shop-cart-item__option-button:hover{
    border-color:var(--cart-navy);
    background:#f7fafb;
}

.shop-cart-item__price{
    min-width:0;
    padding-left:22px;
    border-left:1px solid var(--cart-line);
}

.shop-cart-item__price dl{
    margin:0;
}

.shop-cart-item__price dl > div{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    padding:4px 0;
}

.shop-cart-item__price dt{
    color:#8a959d;
    font-size:12px;
}

.shop-cart-item__price dd{
    margin:0;
    color:#4f5d67;
    font-size:12px;
    font-weight:800;
}

.shop-cart-item__price > p{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:12px;
    margin:18px 0 0;
    padding-top:17px;
    border-top:1px solid var(--cart-line);
}

.shop-cart-item__price > p span{
    color:#7b8790;
    font-size:12px;
    font-weight:800;
}

.shop-cart-item__price > p strong{
    color:var(--cart-ink);
    font-size:20px;
    font-weight:900;
    letter-spacing:-.04em;
    white-space:nowrap;
}

.shop-cart-item__mobile-facts{
    display:none;
}

/* 주문 요약 */
.shop-cart-summary{
    position:sticky;
    top:24px;
}

.shop-cart-summary__box{
    padding:28px;
}

.shop-cart-summary__eyebrow{
    margin:0 0 9px;
    color:var(--cart-blue);
    font-size:10px;
    font-weight:900;
    letter-spacing:.16em;
}

.shop-cart-summary h2{
    margin:0;
    color:var(--cart-ink);
    font-size:23px;
    font-weight:900;
    letter-spacing:-.04em;
}

.shop-cart-summary__detail{
    margin:26px 0 0;
    padding:20px 0;
    border-top:1px solid var(--cart-line);
    border-bottom:1px solid var(--cart-line);
}

.shop-cart-summary__detail > div{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    padding:7px 0;
}

.shop-cart-summary__detail dt{
    color:#78858e;
    font-size:13px;
}

.shop-cart-summary__detail dd{
    margin:0;
    color:var(--cart-ink);
    font-size:13px;
    font-weight:800;
}

.shop-cart-summary__total{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:20px;
    padding:24px 0;
}

.shop-cart-summary__total span{
    color:var(--cart-ink);
    font-size:14px;
    font-weight:900;
}

.shop-cart-summary__total strong{
    color:var(--cart-navy);
    font-size:28px;
    font-weight:900;
    letter-spacing:-.05em;
    white-space:nowrap;
}

.shop-cart-summary__actions{
    display:grid;
    gap:9px;
}

.shop-cart-summary__order,
.shop-cart-summary__continue{
    width:100%;
    height:54px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:10px;
    font-size:14px;
    font-weight:900;
    cursor:pointer;
    transition:.18s ease;
}

.shop-cart-summary__order{
    border:1px solid var(--cart-navy);
    color:#fff;
    background:var(--cart-navy);
    box-shadow:0 12px 25px rgba(7,28,43,.14);
}

.shop-cart-summary__order:hover{
    transform:translateY(-2px);
    background:#12334a;
    box-shadow:0 15px 30px rgba(7,28,43,.2);
}

.shop-cart-summary__continue{
    border:1px solid var(--cart-line);
    color:var(--cart-navy);
    background:#fff;
}

.shop-cart-summary__continue:hover{
    border-color:var(--cart-navy);
}

.shop-cart-summary__naverpay{
    margin-top:14px;
}

.shop-cart-summary__notice{
    margin:18px 0 0;
    color:#8b969e;
    font-size:11px;
    line-height:1.7;
    text-align:center;
}

/* 빈 장바구니 */
.shop-cart-empty{
    min-height:430px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    padding:60px 24px;
    border:1px solid var(--cart-line);
    border-radius:24px;
    background:#fff;
    box-shadow:0 12px 36px rgba(10,35,48,.05);
    text-align:center;
}

.shop-cart-empty > span{
    width:72px;
    height:72px;
    display:grid;
    place-items:center;
    margin-bottom:22px;
    border-radius:50%;
    color:var(--cart-blue);
    background:#ecf5f6;
}

.shop-cart-empty svg{
    width:32px;
    height:32px;
    fill:none;
    stroke:currentColor;
    stroke-width:1.7;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.shop-cart-empty h2{
    margin:0;
    color:var(--cart-ink);
    font-size:24px;
    font-weight:900;
}

.shop-cart-empty p{
    margin:10px 0 24px;
    color:var(--cart-muted);
    font-size:14px;
}

.shop-cart-empty a{
    min-width:160px;
    height:48px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:9px;
    color:#fff;
    background:var(--cart-navy);
    font-size:14px;
    font-weight:900;
}

/* 옵션수정 팝업 */
.mod_option_bg{
    position:fixed;
    z-index:9998;
    inset:0;
    background:rgba(4,18,28,.55);
    backdrop-filter:blur(3px);
}

#mod_option_frm{
    position:fixed;
    z-index:9999;
    top:50%;
    left:50%;
    width:min(560px, calc(100% - 32px));
    max-height:calc(100vh - 60px);
    overflow-y:auto;
    padding:28px;
    border-radius:20px;
    background:#fff;
    box-shadow:0 28px 80px rgba(0,0,0,.25);
    transform:translate(-50%, -50%);
}

#mod_option_frm table{
    width:100%;
    border-collapse:collapse;
}

#mod_option_frm th,
#mod_option_frm td{
    padding:12px 8px;
    border-bottom:1px solid var(--cart-line);
    text-align:left;
}

#mod_option_frm select,
#mod_option_frm input[type="text"],
#mod_option_frm input[type="number"]{
    max-width:100%;
    height:42px;
    padding:0 12px;
    border:1px solid var(--cart-line);
    border-radius:8px;
}

#mod_option_frm button,
#mod_option_frm input[type="submit"]{
    min-height:42px;
    padding:0 16px;
    border-radius:8px;
    font-weight:800;
}

/* 접근성 전용 글자 노출 방지 */
.shop-cart-page .sound_only{
    position:absolute !important;
    width:1px !important;
    height:1px !important;
    margin:-1px !important;
    padding:0 !important;
    overflow:hidden !important;
    clip:rect(0, 0, 0, 0) !important;
    white-space:nowrap !important;
    border:0 !important;
}

/* 전체 배경 */
.shop-cart-page{
    padding:48px 0 120px;
    background:#f1f5f6;
}

/* 페이지 상단 */
.shop-cart-heading{
    align-items:center;
    margin-bottom:30px;
    padding:0 0 30px;
    border-bottom:1px solid #d8e0e3;
}

.shop-cart-heading__copy h1{
    font-size:52px;
}

.shop-cart-heading__copy > span{
    margin-top:10px;
    color:#65737d;
}

/* 주문 단계 */
.shop-order-steps{
    padding:18px 22px;
    border:1px solid #dfe6e8;
    border-radius:14px;
    background:#fff;
}

.shop-order-steps li{
    color:#9aa5ab;
}

.shop-order-steps .is-active{
    color:#071c2b;
}

.shop-order-steps .is-active b{
    color:#1596a5;
}

/* 좌우 레이아웃 */
.shop-cart-layout{
    grid-template-columns:minmax(0, 1fr) 360px;
    gap:24px;
}

/* 상품 카드 */
.shop-cart-products{
    overflow:hidden;
    border:1px solid #d8e1e4;
    border-radius:18px;
    background:#fff;
    box-shadow:0 8px 28px rgba(7,28,43,.07);
}

.shop-cart-products__toolbar{
    min-height:68px;
    padding:0 24px;
    border-bottom:1px solid #dfe6e8;
    background:#f7fafb;
}

.shop-cart-products__list{
    padding:0 24px;
}

.shop-cart-item{
    grid-template-columns:24px 140px minmax(0,1fr) 180px;
    gap:22px;
    padding:26px 0;
}

/* 상품 이미지 */
.shop-cart-item__image{
    border:1px solid #e1e7e9;
    border-radius:14px;
    background:#edf2f3;
}

.shop-cart-item__image img{
    width:100% !important;
    height:100% !important;
    object-fit:cover;
}

/* 상품 정보 */
.shop-cart-item__brand{
    margin-bottom:7px;
    color:#168b99;
    font-size:10px;
    letter-spacing:.16em;
}

.shop-cart-item__content h2{
    max-width:500px;
    color:#10283e;
    font-size:19px;
    line-height:1.45;
}

.shop-cart-item__options{
    margin-top:12px;
    padding:10px 12px;
    border-radius:8px;
    color:#53636e;
    background:#f2f7f7;
}

.shop-cart-item__option-button{
    margin-top:10px;
    border-color:#cbd7db;
    color:#10283e;
    background:#fff;
}

.shop-cart-item__option-button:hover{
    border-color:#10283e;
    color:#fff;
    background:#10283e;
}

/* 상품별 금액 */
.shop-cart-item__price{
    padding-left:22px;
    border-left:1px solid #dfe6e8;
}

.shop-cart-item__price > p strong{
    color:#10283e;
    font-size:22px;
}

/* 전체 선택 체크박스 */
.shop-cart-check > span{
    border:1px solid #9cabb3;
    background:#fff;
}

.shop-cart-check input:checked + span{
    border-color:#168b99;
    background:#168b99;
}

/* 우측 결제 박스 */
.shop-cart-summary__box{
    overflow:hidden;
    padding:0;
    border:0;
    border-radius:18px;
    color:#fff;
    background:#10283e;
    box-shadow:0 16px 38px rgba(7,28,43,.2);
}

.shop-cart-summary__eyebrow{
    margin:0;
    padding:28px 28px 8px;
    color:#6ed9dc;
}

.shop-cart-summary h2{
    padding:0 28px;
    color:#fff;
    font-size:25px;
}

.shop-cart-summary__detail{
    margin:24px 28px 0;
    padding:18px 0;
    border-top:1px solid rgba(255,255,255,.15);
    border-bottom:1px solid rgba(255,255,255,.15);
}

.shop-cart-summary__detail dt{
    color:rgba(255,255,255,.62);
}

.shop-cart-summary__detail dd{
    color:#fff;
}

.shop-cart-summary__total{
    margin:0 28px;
    padding:24px 0;
}

.shop-cart-summary__total span{
    color:rgba(255,255,255,.76);
}

.shop-cart-summary__total strong{
    color:#fff;
    font-size:30px;
}

/* 구매 버튼 영역 */
.shop-cart-summary__actions{
    display:grid !important;
    gap:9px;
    padding:0 28px 28px;
}

.shop-cart-summary__order{
    width:100% !important;
    height:58px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    border:1px solid #69d7d8 !important;
    border-radius:10px !important;
    color:#071c2b !important;
    background:#69d7d8 !important;
    font-size:15px !important;
    font-weight:900 !important;
    opacity:1 !important;
    visibility:visible !important;
}

.shop-cart-summary__order:hover{
    border-color:#87e6e7 !important;
    background:#87e6e7 !important;
    transform:translateY(-2px);
}

.shop-cart-summary__continue{
    width:100%;
    height:50px;
    border:1px solid rgba(255,255,255,.3);
    color:#fff;
    background:transparent;
}

.shop-cart-summary__continue:hover{
    border-color:#fff;
    color:#10283e;
    background:#fff;
}

.shop-cart-summary__notice{
    margin:0;
    padding:18px 28px 24px;
    color:rgba(255,255,255,.52);
    background:rgba(0,0,0,.1);
}

/* 선택삭제 버튼 */
.shop-cart-delete-actions button{
    border-color:#ccd7db;
    color:#65747d;
    background:#fff;
}

.shop-cart-delete-actions button:hover{
    border-color:#e34d4d;
    color:#e34d4d;
    background:#fff8f8;
}

.shop-cart-summary__box{
    overflow:hidden;
    padding:0;
    border:1px solid #d8e2e5;
    border-top:4px solid #59c9d1;
    border-radius:18px;
    color:#10283e;
    background:#fff;
    box-shadow:0 14px 34px rgba(16,40,62,.09);
}

.shop-cart-summary__eyebrow{
    margin:0;
    padding:25px 28px 7px;
    color:#168b99;
}

.shop-cart-summary h2{
    padding:0 28px;
    color:#10283e;
}

.shop-cart-summary__detail{
    margin:22px 28px 0;
    padding:18px 0;
    border-top:1px solid #e1e8ea;
    border-bottom:1px solid #e1e8ea;
}

.shop-cart-summary__detail dt{
    color:#78858e;
}

.shop-cart-summary__detail dd{
    color:#10283e;
}

/* 총 결제금액 강조 */
.shop-cart-summary__total{
    align-items:center;
    margin:22px 28px;
    padding:20px;
    border:1px solid #d9eeee;
    border-radius:12px;
    background:#edf8f8;
}

.shop-cart-summary__total span{
    color:#536670;
}

.shop-cart-summary__total strong{
    color:#10283e;
    font-size:29px;
}

/* 버튼 영역 */
.shop-cart-summary__actions{
    display:grid !important;
    gap:9px;
    padding:0 28px 28px;
}

/* 주문하기 */
.shop-cart-summary__order{
    width:100% !important;
    height:56px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    border:1px solid #10283e !important;
    border-radius:10px !important;
    color:#fff !important;
    background:#10283e !important;
    font-size:15px !important;
    font-weight:900 !important;
    box-shadow:0 10px 22px rgba(16,40,62,.14);
}

.shop-cart-summary__order:hover{
    border-color:#19415e !important;
    background:#19415e !important;
    transform:translateY(-2px);
}

/* 쇼핑 계속하기 */
.shop-cart-summary__continue{
    width:100%;
    height:50px;
    border:1px solid #cfdadd;
    color:#10283e;
    background:#fff;
}

.shop-cart-summary__continue:hover{
    border-color:#168b99;
    color:#168b99;
    background:#f5fbfb;
}

/* 하단 안내 */
.shop-cart-summary__notice{
    margin:0;
    padding:18px 28px 22px;
    color:#87939b;
    background:#f7f9fa;
}

/* 접근성 텍스트 */
.shop-order-page .sound_only{
    position:absolute !important;
    width:1px !important;
    height:1px !important;
    margin:-1px !important;
    padding:0 !important;
    overflow:hidden !important;
    clip:rect(0, 0, 0, 0) !important;
    white-space:nowrap !important;
    border:0 !important;
}

/* 정적 흰색 헤더 */
.site-header--shop-item{
    position:static;
    top:auto;
    left:auto;
    width:100%;
    color:var(--order-navy);
    border-bottom:1px solid var(--order-line);
    background:#fff;
}

.site-header--shop-item .gnb-link,
.site-header--shop-item .header-tools button,
.site-header--shop-item .header-tools a{
    color:var(--order-navy);
}

.site-header--shop-item .gnb-arrow{
    border-color:currentColor;
}

.site-header--shop-item .header-tools button{
    border-color:rgba(16,40,62,.18);
    background:#fff;
}

.site-header--shop-item .header-tools svg{
    color:currentColor;
    stroke:currentColor;
}

/* 페이지 */
.shop-order-page{
    min-height:70vh;
    padding:48px 0 120px;
    color:var(--order-ink);
    background:var(--order-bg);
}

.shop-order-page *{
    box-sizing:border-box;
}

.shop-order-page__inner{
    width:min(1280px, calc(100% - 48px));
    margin:0 auto;
}

/* 타이틀 */
.shop-order-heading{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:48px;
    margin-bottom:30px;
    padding-bottom:30px;
    border-bottom:1px solid #d4dde1;
}

.shop-order-heading__copy > p{
    margin:0 0 11px;
    color:var(--order-teal);
    font-size:12px;
    font-weight:900;
    letter-spacing:.18em;
}

.shop-order-heading__copy h1{
    margin:0;
    color:var(--order-navy);
    font-size:clamp(40px, 4vw, 56px);
    font-weight:900;
    line-height:1.08;
    letter-spacing:-.055em;
}

.shop-order-heading__copy > span{
    display:block;
    margin-top:12px;
    color:var(--order-muted);
    font-size:15px;
    line-height:1.7;
}

/* 단계 */
.shop-order-steps{
    display:flex;
    align-items:center;
    min-width:380px;
    margin:0;
    padding:18px 22px;
    border:1px solid var(--order-line);
    border-radius:14px;
    background:#fff;
    list-style:none;
}

.shop-order-steps li{
    position:relative;
    flex:1;
    min-width:0;
    padding-left:34px;
    color:#a1abb1;
}

.shop-order-steps li:first-child{
    padding-left:0;
}

.shop-order-steps li + li::before{
    content:"";
    position:absolute;
    top:15px;
    left:0;
    width:25px;
    height:1px;
    background:#cfd8dc;
}

.shop-order-steps b{
    display:block;
    margin-bottom:5px;
    font-size:11px;
    font-weight:900;
    letter-spacing:.08em;
}

.shop-order-steps span{
    font-size:12px;
    font-weight:800;
    white-space:nowrap;
}

.shop-order-steps .is-active{
    color:var(--order-navy);
}

.shop-order-steps .is-active b{
    color:var(--order-teal);
}

/* 공통 카드 */
#forderform{
    width:100%;
    margin:0;
}

#sod_frm{
    width:100%;
    margin:0;
}

.shop-order-card{
    overflow:hidden;
    border:1px solid var(--order-line);
    border-radius:18px;
    background:#fff;
    box-shadow:0 10px 28px rgba(16,40,62,.055);
}

.shop-order-card__head{
    min-height:76px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:24px;
    padding:20px 26px;
    border-bottom:1px solid var(--order-line);
    background:#fbfcfc;
}

.shop-order-card__head > div > span{
    display:block;
    margin-bottom:5px;
    color:var(--order-teal);
    font-size:10px;
    font-weight:900;
    letter-spacing:.15em;
}

.shop-order-card__head h2{
    margin:0 !important;
    color:var(--order-navy);
    font-size:22px !important;
    font-weight:900 !important;
    line-height:1.3;
    letter-spacing:-.04em;
}

.shop-order-card__head > p{
    margin:0;
    color:#87939b;
    font-size:12px;
    line-height:1.5;
}

.shop-order-card__head > p b{
    color:var(--order-danger);
}

.shop-order-card__head > a{
    height:38px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:0 14px;
    border:1px solid #cfdade;
    border-radius:8px;
    color:var(--order-navy);
    background:#fff;
    font-size:12px;
    font-weight:800;
    transition:.18s ease;
}

.shop-order-card__head > a:hover{
    border-color:var(--order-navy);
}

/* 주문상품 */
.shop-order-products{
    margin-bottom:24px;
}

.shop-order-products .tbl_wrap{
    width:100%;
    overflow:visible;
}

#sod_list{
    width:100%;
    margin:0;
    border:0;
    border-collapse:collapse;
    table-layout:fixed;
}

#sod_list thead th{
    height:50px;
    padding:0 14px;
    border:0;
    border-bottom:1px solid var(--order-line);
    color:#7a8790;
    background:#f7fafb;
    font-size:12px;
    font-weight:800;
    text-align:center;
}

#sod_list thead th:first-child{
    width:auto;
    text-align:left;
    padding-left:26px;
}

#sod_list thead th:nth-child(2){width:80px;}
#sod_list thead th:nth-child(3){width:120px;}
#sod_list thead th:nth-child(4){width:130px;}
#sod_list thead th:nth-child(5){width:90px;}
#sod_list thead th:nth-child(6){width:90px;}

#sod_list tbody tr + tr{
    border-top:1px solid var(--order-line);
}

#sod_list tbody td{
    padding:22px 14px;
    border:0;
    color:var(--order-ink);
    background:#fff;
    font-size:13px;
    text-align:center;
    vertical-align:middle;
}

#sod_list .td_prd{
    display:flex;
    align-items:center;
    gap:18px;
    padding-left:26px;
    text-align:left;
}

#sod_list .sod_img{
    width:112px;
    height:112px;
    flex:0 0 auto;
    overflow:hidden;
    border:1px solid var(--order-line);
    border-radius:14px;
    background:#edf2f3;
}

#sod_list .sod_img img{
    width:100% !important;
    height:100% !important;
    display:block;
    object-fit:cover;
}

#sod_list .sod_name{
    min-width:0;
    color:#64717a;
    line-height:1.6;
}

#sod_list .sod_name > b{
    display:block;
    margin-bottom:9px;
    color:var(--order-navy);
    font-size:17px;
    line-height:1.45;
    letter-spacing:-.03em;
}

#sod_list .sod_opt{
    color:#65737d;
    font-size:12px;
}

#sod_list .sod_opt ul,
#sod_list .sod_opt ol{
    margin:0;
    padding:0;
    list-style:none;
}

#sod_list .sod_opt li{
    position:relative;
    padding-left:11px;
}

#sod_list .sod_opt li::before{
    content:"";
    position:absolute;
    top:.75em;
    left:0;
    width:4px;
    height:4px;
    border-radius:50%;
    background:var(--order-mint);
}

#sod_list .cp_btn,
#sod_list .cp_cancel{
    min-height:32px;
    margin-top:10px;
    padding:0 12px;
    border:1px solid #cbd7db;
    border-radius:7px;
    color:var(--order-navy);
    background:#fff;
    font-size:11px;
    font-weight:800;
    cursor:pointer;
}

#sod_list .td_numbig,
#sod_list .td_num,
#sod_list .td_dvr{
    color:#42515c;
    font-weight:700;
}

#sod_list .total_price{
    color:var(--order-navy);
    font-size:16px;
    font-weight:900;
}

/* 본문 2열 */
.shop-order-layout{
    display:grid;
    grid-template-columns:minmax(0, 1fr) 380px;
    gap:24px;
    align-items:start;
}

.sod_left{
    min-width:0;
}

.sod_right{
    min-width:0;
    position:sticky;
    top:24px;
}

/* 입력 카드 */
.shop-order-form-card{
    margin-bottom:24px;
}

.shop-order-form-card .tbl_wrap{
    width:100%;
    overflow:visible;
}

.shop-order-form-card table,
#sod_frm_pay table{
    width:100%;
    margin:0;
    border:0;
    border-collapse:collapse;
}

.shop-order-form-card tbody tr + tr,
#sod_frm_pay tbody tr + tr{
    border-top:1px solid #edf1f2;
}

.shop-order-form-card th,
.shop-order-form-card td,
#sod_frm_pay th,
#sod_frm_pay td{
    padding:15px 24px;
    border:0 !important;
    background:#fff !important;
    vertical-align:middle;
}

.shop-order-form-card th,
#sod_frm_pay th{
    width:145px;
    color:#45545f;
    font-size:13px;
    font-weight:800;
    text-align:left;
}

.shop-order-form-card td,
#sod_frm_pay td{
    color:#5f6d76;
    font-size:13px;
}

/* 입력 */
#forderform input[type="text"],
#forderform input[type="password"],
#forderform input[type="email"],
#forderform input[type="tel"],
#forderform input[type="number"],
#forderform select,
#forderform textarea{
    max-width:100%;
    min-height:46px;
    margin:0;
    padding:0 14px;
    border:1px solid #cfd9dd;
    border-radius:8px;
    color:var(--order-ink);
    background:#fff;
    font-family:inherit;
    font-size:14px;
    line-height:1.4;
    outline:none;
    box-shadow:none;
    transition:border-color .18s ease, box-shadow .18s ease, background .18s ease;
}

#forderform textarea{
    width:100%;
    min-height:120px;
    padding:13px 14px;
    resize:vertical;
}

#forderform input:focus,
#forderform select:focus,
#forderform textarea:focus{
    border-color:var(--order-teal);
    box-shadow:0 0 0 3px rgba(25,143,159,.11);
}

#forderform input[readonly]{
    color:#849099;
    background:#f4f7f8;
}

#forderform .required{
    background-image:none !important;
}

#forderform .frm_info{
    display:block;
    margin:0 0 8px;
    color:#8b969d;
    font-size:11px;
}

#forderform #od_name,
#forderform #od_pwd,
#forderform #od_tel,
#forderform #od_hp,
#forderform #od_email,
#forderform #od_b_name,
#forderform #od_b_tel,
#forderform #od_b_hp,
#forderform #ad_subject{
    width:min(100%, 360px);
}

#forderform #od_zip,
#forderform #od_b_zip{
    width:140px;
}

#forderform .frm_address{
    width:min(100%, 620px);
    margin-top:8px;
}

#forderform .btn_address,
#forderform .btn_frmline,
#forderform #order_address{
    min-height:42px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    margin:0 0 0 6px;
    padding:0 14px;
    border:1px solid var(--order-navy);
    border-radius:8px;
    color:var(--order-navy);
    background:#fff;
    font-size:12px;
    font-weight:800;
    line-height:1;
    cursor:pointer;
    vertical-align:middle;
}

#forderform .btn_address:hover,
#forderform .btn_frmline:hover,
#forderform #order_address:hover{
    color:#fff;
    background:var(--order-navy);
}

/* 배송지 선택 */
.order_choice_place{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    align-items:center;
}

.order_choice_place input[type="radio"],
.order_choice_place input[type="checkbox"],
#sod_frm_paysel input[type="radio"]{
    position:absolute;
    width:1px;
    height:1px;
    overflow:hidden;
    clip:rect(0,0,0,0);
}

.order_choice_place label{
    min-height:40px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:0 14px;
    border:1px solid #ced8dc;
    border-radius:8px;
    color:#52616b;
    background:#fff;
    font-size:12px;
    font-weight:800;
    cursor:pointer;
}

.order_choice_place input:checked + label{
    border-color:var(--order-teal);
    color:var(--order-navy);
    background:#eaf7f8;
}

#forderform input[type="checkbox"]:not(.selec_chk),
#forderform input[type="radio"]:not([name="od_settle_case"]):not([name="ad_sel_addr"]){
    accent-color:var(--order-teal);
}

/* 우측 결제 요약 */
.sod_right > #sod_bsk_tot,
#sod_frm_pay{
    overflow:hidden;
    border:1px solid var(--order-line);
    border-radius:18px;
    background:#fff;
    box-shadow:0 12px 30px rgba(16,40,62,.07);
}

.sod_right > #sod_bsk_tot{
    margin-bottom:16px;
    padding:24px 26px;
    border-top:4px solid var(--order-mint);
}

.sod_right > #sod_bsk_tot::before{
    content:"ORDER SUMMARY";
    display:block;
    margin-bottom:14px;
    color:var(--order-teal);
    font-size:10px;
    font-weight:900;
    letter-spacing:.15em;
}

#sod_bsk_tot ul{
    margin:0;
    padding:0;
    list-style:none;
}

#sod_bsk_tot li{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    padding:7px 0;
    color:#6e7b84;
    font-size:13px;
}

#sod_bsk_tot li strong{
    margin-left:auto;
    color:var(--order-ink);
    font-size:14px;
    font-weight:900;
}

#sod_bsk_tot .sod_bsk_cnt{
    margin-top:16px;
    padding:20px;
    border:1px solid #d7ecee;
    border-radius:12px;
    color:#53656e;
    background:#edf8f8;
    font-weight:900;
}

#sod_bsk_tot .sod_bsk_cnt strong{
    color:var(--order-navy);
    font-size:24px;
    letter-spacing:-.04em;
}

/* 결제정보 카드 */
#sod_frm_pay{
    margin:0;
}

#sod_frm_pay .shop-order-card__head{
    border-radius:0;
}

#sod_frm_pay .pay_tbl{
    border-bottom:1px solid var(--order-line);
}

#sod_frm_pay th{
    width:120px;
    padding-left:26px;
}

#sod_frm_pay td{
    padding-right:26px;
}

#od_tot_price{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    margin:20px 26px;
    padding:18px;
    border:1px solid #d7ecee;
    border-radius:12px;
    color:#566770;
    background:#edf8f8;
    font-size:13px;
    font-weight:800;
}

#od_tot_price strong{
    margin-left:auto;
    color:var(--order-navy);
    font-size:26px;
    font-weight:900;
    letter-spacing:-.045em;
}

#od_pay_sl{
    padding:0 26px 24px;
}

#od_pay_sl h3{
    margin:22px 0 12px;
    color:var(--order-navy);
    font-size:16px;
    font-weight:900;
}

#sod_frm_pt_alert{
    margin:0 0 13px;
    padding:11px 12px;
    border-radius:8px;
    color:#74818a;
    background:#f4f7f8;
    font-size:11px;
    line-height:1.6;
}

#sod_frm_paysel{
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:8px;
    margin:0;
    padding:0;
    border:0;
}

#sod_frm_paysel legend{
    position:absolute;
    width:1px;
    height:1px;
    overflow:hidden;
    clip:rect(0,0,0,0);
}

#sod_frm_paysel label.lb_icon{
    min-height:48px;
    display:flex !important;
    align-items:center;
    justify-content:center;
    margin:0 !important;
    padding:8px 10px !important;
    border:1px solid #ced8dc !important;
    border-radius:9px !important;
    color:#4e5f69 !important;
    background:#fff !important;
    background-image:none !important;
    font-family:inherit !important;
    font-size:12px !important;
    font-weight:800 !important;
    line-height:1.35 !important;
    text-align:center;
    cursor:pointer;
    transition:.18s ease;
}

#sod_frm_paysel input:checked + label.lb_icon{
    border-color:var(--order-teal) !important;
    color:var(--order-navy) !important;
    background:#eaf7f8 !important;
    box-shadow:inset 0 0 0 1px var(--order-teal);
}

#settle_bank{
    margin-top:12px;
    padding:14px;
    border:1px solid var(--order-line);
    border-radius:10px;
    background:#f7fafb;
    color:#5f6d76;
    font-size:12px;
}

#settle_bank select,
#settle_bank input{
    width:100%;
    margin:6px 0 10px;
}

.sod_frm_point{
    margin-top:16px;
    padding:16px;
    border:1px solid var(--order-line);
    border-radius:10px;
    background:#f7fafb;
}

.sod_frm_point > div:first-child{
    display:flex;
    align-items:center;
    gap:8px;
}

.sod_frm_point input{
    width:120px;
}

#sod_frm_pt{
    display:grid;
    gap:6px;
    margin-top:12px;
    color:#74818a;
    font-size:11px;
}

#sod_frm_pt span{
    display:flex;
    justify-content:space-between;
    gap:14px;
}

#sod_frm_pt strong{
    color:#4e5f69;
}

/* 주문버튼 - PG별 출력 대응 */
#display_pay_button,
#display_pay_process,
.sod_right .btn_confirm{
    margin:16px 0 0;
}

#forderform .btn_submit,
#forderform input[type="submit"],
#forderform button[type="submit"],
#forderform input[type="button"].btn_submit,
#forderform button.btn_submit{
    width:100% !important;
    min-height:56px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    padding:0 18px !important;
    border:1px solid var(--order-navy) !important;
    border-radius:10px !important;
    color:#fff !important;
    background:var(--order-navy) !important;
    font-family:inherit !important;
    font-size:15px !important;
    font-weight:900 !important;
    line-height:1 !important;
    cursor:pointer;
    box-shadow:0 10px 22px rgba(16,40,62,.14);
}

#forderform .btn_submit:hover,
#forderform input[type="submit"]:hover,
#forderform button[type="submit"]:hover{
    background:#1b405b !important;
}

#forderform .btn_cancel,
#forderform .btn01{
    width:100%;
    min-height:48px;
    display:flex;
    align-items:center;
    justify-content:center;
    margin-top:8px;
    border:1px solid #ced8dc;
    border-radius:9px;
    color:var(--order-navy);
    background:#fff;
    font-size:13px;
    font-weight:800;
}

/* 쿠폰 팝업 등 */
#cp_frm,
#od_coupon_frm,
#sc_coupon_frm{
    position:relative;
    z-index:30;
    margin-top:10px;
    padding:16px;
    border:1px solid var(--order-line);
    border-radius:10px;
    background:#fff;
    box-shadow:0 12px 30px rgba(16,40,62,.12);
}

#cp_frm table,
#od_coupon_frm table,
#sc_coupon_frm table{
    width:100%;
    border-collapse:collapse;
}

#cp_frm th,
#cp_frm td,
#od_coupon_frm th,
#od_coupon_frm td,
#sc_coupon_frm th,
#sc_coupon_frm td{
    padding:10px 8px !important;
    border-bottom:1px solid var(--order-line) !important;
}

/* 태블릿 */
@media (max-width:1080px){
    .shop-order-layout{
        grid-template-columns:minmax(0, 1fr) 340px;
    }

    .shop-order-page__inner{
        width:min(100% - 36px, 1280px);
    }
}

@media (max-width:900px){
    .shop-order-heading{
        align-items:flex-start;
        flex-direction:column;
        gap:24px;
    }

    .shop-order-steps{
        width:100%;
        min-width:0;
    }

    .shop-order-layout{
        grid-template-columns:1fr;
    }

    .sod_right{
        position:static;
    }
}

/* 모바일 */
@media (max-width:680px){
    .shop-order-page{
        padding:30px 0 80px;
    }

    .shop-order-page__inner{
        width:min(100% - 28px, 1280px);
    }

    .shop-order-heading{
        margin-bottom:22px;
        padding-bottom:22px;
    }

    .shop-order-heading__copy h1{
        font-size:38px;
    }

    .shop-order-heading__copy > span{
        font-size:13px;
    }

    .shop-order-steps{
        padding:14px 15px;
    }

    .shop-order-steps li{
        padding-left:23px;
    }

    .shop-order-steps li + li::before{
        width:16px;
    }

    .shop-order-steps span{
        font-size:10px;
    }

    .shop-order-card,
    .sod_right > #sod_bsk_tot,
    #sod_frm_pay{
        border-radius:15px;
    }

    .shop-order-card__head{
        min-height:auto;
        align-items:flex-start;
        padding:18px;
    }

    .shop-order-card__head h2{
        font-size:19px !important;
    }

    .shop-order-card__head > p{
        max-width:130px;
        text-align:right;
    }

    /* 상품표 -> 모바일 카드 */
    #sod_list,
    #sod_list tbody,
    #sod_list tr{
        display:block;
        width:100%;
    }

    #sod_list thead{
        display:none;
    }

    #sod_list tbody tr{
        position:relative;
        display:grid;
        grid-template-columns:96px minmax(0, 1fr);
        gap:14px;
        padding:18px;
    }

    #sod_list tbody tr + tr{
        border-top:1px solid var(--order-line);
    }

    #sod_list tbody td{
        display:block;
        padding:0;
        text-align:left;
    }

    #sod_list .td_prd{
        grid-column:1 / -1;
        display:grid;
        grid-template-columns:96px minmax(0, 1fr);
        gap:14px;
        padding:0;
    }

    #sod_list .sod_img{
        width:96px;
        height:96px;
    }

    #sod_list .sod_name > b{
        font-size:15px;
    }

    #sod_list .td_num,
    #sod_list .td_numbig,
    #sod_list .td_dvr{
        grid-column:2;
        display:flex;
        align-items:center;
        justify-content:space-between;
        gap:16px;
        min-height:24px;
        border-top:1px dashed #e3e9eb;
        padding-top:8px;
        font-size:12px;
    }

    #sod_list .td_num::before,
    #sod_list .td_numbig::before,
    #sod_list .td_dvr::before{
        content:attr(data-label);
        color:#89949b;
        font-size:11px;
        font-weight:700;
    }

    #sod_list .total_price{
        font-size:14px;
    }

    /* 입력표 -> 세로형 */
    .shop-order-form-card table,
    .shop-order-form-card tbody,
    .shop-order-form-card tr,
    .shop-order-form-card th,
    .shop-order-form-card td,
    #sod_frm_pay table,
    #sod_frm_pay tbody,
    #sod_frm_pay tr,
    #sod_frm_pay th,
    #sod_frm_pay td{
        display:block;
        width:100%;
    }

    .shop-order-form-card tr,
    #sod_frm_pay tr{
        padding:16px 18px;
    }

    .shop-order-form-card tbody tr + tr,
    #sod_frm_pay tbody tr + tr{
        border-top:1px solid #edf1f2;
    }

    .shop-order-form-card th,
    .shop-order-form-card td,
    #sod_frm_pay th,
    #sod_frm_pay td{
        padding:0 !important;
    }

    .shop-order-form-card th,
    #sod_frm_pay th{
        margin-bottom:9px;
        color:#40515d;
        font-size:12px;
    }

    #forderform input[type="text"],
    #forderform input[type="password"],
    #forderform input[type="email"],
    #forderform input[type="tel"],
    #forderform input[type="number"],
    #forderform select,
    #forderform textarea,
    #forderform #od_name,
    #forderform #od_pwd,
    #forderform #od_tel,
    #forderform #od_hp,
    #forderform #od_email,
    #forderform #od_b_name,
    #forderform #od_b_tel,
    #forderform #od_b_hp,
    #forderform #ad_subject{
        width:100%;
    }

    #forderform #od_zip,
    #forderform #od_b_zip{
        width:calc(100% - 104px);
    }

    #forderform .btn_address{
        width:96px;
        margin-left:4px;
        padding:0 8px;
    }

    #forderform .frm_address{
        width:100%;
    }

    .order_choice_place{
        gap:6px;
    }

    .order_choice_place label{
        min-height:38px;
        padding:0 11px;
        font-size:11px;
    }

    #sod_frm_paysel{
        grid-template-columns:1fr;
    }

    #od_pay_sl{
        padding:0 18px 20px;
    }

    #od_tot_price{
        margin:18px;
    }

    #od_tot_price strong{
        font-size:23px;
    }

    .sod_right > #sod_bsk_tot{
        padding:20px;
    }

    #sod_bsk_tot .sod_bsk_cnt{
        padding:17px;
    }

    #sod_bsk_tot .sod_bsk_cnt strong{
        font-size:22px;
    }
}

@media (max-width:420px){
    .shop-order-steps li{
        padding-left:18px;
    }

    .shop-order-steps li + li::before{
        left:-1px;
        width:12px;
    }

    .shop-order-steps b{
        font-size:9px;
    }

    .shop-order-steps span{
        font-size:9px;
    }

    .shop-order-card__head > p{
        display:none;
    }

    #sod_list tbody tr{
        grid-template-columns:84px minmax(0,1fr);
    }

    #sod_list .td_prd{
        grid-template-columns:84px minmax(0,1fr);
    }

    #sod_list .sod_img{
        width:84px;
        height:84px;
    }
}


/* =========================================================
   주소 입력 최종 보정
========================================================= */

#forderform .shop-order-address{
    width:min(100%, 620px);
    display:grid !important;
    gap:12px !important;
}

#forderform .shop-order-address__zip{
    display:grid !important;
    grid-template-columns:140px 132px !important;
    gap:10px !important;
    align-items:center;
}

#forderform .shop-order-address input{
    width:100% !important;
    margin:0 !important;
}

#forderform .shop-order-address .btn_address{
    width:132px !important;
    height:46px !important;
    min-height:46px !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    margin:0 !important;
    padding:0 14px !important;
    border:1px solid #10283e !important;
    border-radius:9px !important;
    color:#fff !important;
    background:#10283e !important;
    font-family:inherit !important;
    font-size:13px !important;
    font-weight:900 !important;
    line-height:1 !important;
    opacity:1 !important;
    visibility:visible !important;
    cursor:pointer !important;
    box-shadow:0 8px 18px rgba(16,40,62,.12) !important;
    appearance:none;
}

#forderform .shop-order-address .btn_address:hover,
#forderform .shop-order-address .btn_address:focus{
    border-color:#1b455f !important;
    color:#fff !important;
    background:#1b455f !important;
    transform:translateY(-1px);
    box-shadow:0 11px 22px rgba(16,40,62,.18) !important;
}

#forderform .shop-order-address .btn_address:focus-visible{
    outline:3px solid rgba(25,143,159,.2) !important;
    outline-offset:2px;
}

#forderform .shop-order-address input[readonly]{
    color:#5e6c75 !important;
    background:#f3f7f8 !important;
}

#forderform .shop-order-address #od_addr2,
#forderform .shop-order-address #od_b_addr2{
    color:#14202b !important;
    background:#fff !important;
    cursor:text;
}

/* 주소 검색 버튼: 기본 상태에서도 항상 표시 */
#forderform .shop-order-address__zip > button.btn_address,
#forderform button.btn_address{
    position:relative !important;
    z-index:2 !important;
    width:132px !important;
    height:46px !important;
    min-height:46px !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    margin:0 !important;
    padding:0 14px !important;
    border:1px solid #10283e !important;
    border-radius:9px !important;
    color:#fff !important;
    -webkit-text-fill-color:#fff !important;
    background-color:#10283e !important;
    background-image:none !important;
    font-family:inherit !important;
    font-size:13px !important;
    font-weight:900 !important;
    line-height:1 !important;
    text-indent:0 !important;
    opacity:1 !important;
    visibility:visible !important;
    filter:none !important;
    cursor:pointer !important;
    box-shadow:0 8px 18px rgba(16,40,62,.12) !important;
    appearance:none !important;
    -webkit-appearance:none !important;
}

#forderform .shop-order-address__zip > button.btn_address:hover,
#forderform .shop-order-address__zip > button.btn_address:focus,
#forderform button.btn_address:hover,
#forderform button.btn_address:focus{
    border-color:#1b455f !important;
    color:#fff !important;
    -webkit-text-fill-color:#fff !important;
    background-color:#1b455f !important;
    background-image:none !important;
}

/* 주소 입력 간격 */
#forderform .shop-order-address{
    width:min(100%, 620px) !important;
    display:grid !important;
    gap:12px !important;
}

#forderform .shop-order-address__zip{
    display:grid !important;
    grid-template-columns:140px 132px !important;
    gap:10px !important;
    align-items:center !important;
}

#forderform .shop-order-address input{
    width:100% !important;
    margin:0 !important;
}

/* 주문자와 동일 선택 상태 */
#forderform .order_choice_place input[name="ad_sel_addr"]:checked + label{
    border-color:#198f9f !important;
    color:#10283e !important;
    background:#eaf7f8 !important;
    box-shadow:inset 0 0 0 1px #198f9f !important;
}

@media (max-width:480px){
    #forderform .shop-order-address__zip{
        grid-template-columns:minmax(0,1fr) 112px !important;
    }

    #forderform .shop-order-address__zip > button.btn_address,
    #forderform button.btn_address{
        width:112px !important;
        padding:0 9px !important;
    }
}

/* PG 스킨이 출력하는 기본 버튼은 숨기고 기능만 유지 */
#forderform #display_pay_button{
    display:none !important;
}

/*
 * 결제 처리 중 영역은 기본 인라인 display:none을 따릅니다.
 * 주문 처리 시 PG 스크립트가 display:block으로 변경할 수 있습니다.
 */
#forderform #display_pay_process{
    width:100%;
    margin:14px 0 0;
    padding:24px;
    border:1px solid #dbe4e7;
    border-radius:14px;
    color:#10283e;
    background:#fff;
    text-align:center;
    box-shadow:0 10px 28px rgba(16,40,62,.06);
}

/* 체크점빵 전용 주문 액션 */
#forderform .checkfnb-order-actions{
    width:100%;
    display:grid !important;
    gap:10px !important;
    margin:16px 0 0 !important;
    padding:0 !important;
    border:0 !important;
    background:transparent !important;
    box-shadow:none !important;
}

#forderform .checkfnb-order-submit{
    width:100% !important;
    height:58px !important;
    min-height:58px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    margin:0 !important;
    padding:0 18px !important;
    border:1px solid #10283e !important;
    border-radius:11px !important;
    color:#fff !important;
    -webkit-text-fill-color:#fff !important;
    background:#10283e !important;
    background-image:none !important;
    font-family:inherit !important;
    font-size:15px !important;
    font-weight:900 !important;
    line-height:1 !important;
    text-indent:0 !important;
    opacity:1 !important;
    visibility:visible !important;
    cursor:pointer !important;
    box-shadow:0 11px 24px rgba(16,40,62,.16) !important;
    appearance:none !important;
    -webkit-appearance:none !important;
    transition:transform .18s ease, background-color .18s ease, box-shadow .18s ease;
}

#forderform .checkfnb-order-submit:hover,
#forderform .checkfnb-order-submit:focus{
    border-color:#1b405b !important;
    color:#fff !important;
    -webkit-text-fill-color:#fff !important;
    background:#1b405b !important;
    transform:translateY(-2px);
    box-shadow:0 15px 30px rgba(16,40,62,.22) !important;
}

#forderform .checkfnb-order-submit:focus-visible{
    outline:3px solid rgba(25,143,159,.2) !important;
    outline-offset:2px;
}

#forderform .checkfnb-order-cancel{
    width:100% !important;
    height:50px !important;
    min-height:50px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    margin:0 !important;
    padding:0 18px !important;
    border:1px solid #ccd7db !important;
    border-radius:10px !important;
    color:#10283e !important;
    background:#fff !important;
    font-family:inherit !important;
    font-size:13px !important;
    font-weight:800 !important;
    line-height:1 !important;
    text-decoration:none !important;
    box-shadow:none !important;
    transition:border-color .18s ease, color .18s ease, background-color .18s ease;
}

#forderform .checkfnb-order-cancel:hover,
#forderform .checkfnb-order-cancel:focus{
    border-color:#198f9f !important;
    color:#198f9f !important;
    background:#f4fbfb !important;
}
