@charset "utf-8";
/* jj_shop-style gallery list. Scoped to this board; preserves shared theme and board controls. */
#bo_list.jj-gallery-board{width:100%;margin:0 auto 32px;box-sizing:border-box;color:inherit}
#bo_list.jj-gallery-board *,#bo_list.jj-gallery-board *::before,#bo_list.jj-gallery-board *::after{box-sizing:border-box}
#bo_list.jj-gallery-board .jjg-inner{width:100%;max-width:var(--wrap,1200px);margin:0 auto;padding:25px 20px 45px}
#bo_list.jj-gallery-board .jjg-heading{margin-bottom:22px}
#bo_list.jj-gallery-board .jjg-heading h1{font-size:clamp(24px,3vw,34px);line-height:1.3;letter-spacing:-.04em;margin:0;font-weight:750}
#bo_list.jj-gallery-board #bo_cate{margin:16px 0 12px;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;-webkit-overflow-scrolling:touch}
#bo_list.jj-gallery-board #bo_cate::-webkit-scrollbar{display:none}
#bo_list.jj-gallery-board #bo_cate ul{margin:0;padding:0 2px;list-style:none;display:flex;gap:6px;flex-wrap:nowrap;min-width:max-content}
#bo_list.jj-gallery-board #bo_cate li{flex-shrink:0}
#bo_list.jj-gallery-board #bo_cate a{display:block;padding:6px 16px;border:1px solid #e2e8f0;border-radius:20px;color:#64748b;text-decoration:none;font-size:13px;white-space:nowrap;line-height:1.6}
#bo_list.jj-gallery-board #bo_cate a:hover,#bo_list.jj-gallery-board #bo_cate #bo_cate_on{border-color:#001e45;color:#001e45;background:#f8fafc;font-weight:600}
#bo_list.jj-gallery-board .jjg-count{padding:8px 0 12px;border-bottom:1px solid #f1f5f9;margin:0 0 4px;font-size:14px;color:#64748b}
#bo_list.jj-gallery-board .jjg-count strong{color:#0f172a;font-weight:700}
#bo_list.jj-gallery-board .jjg-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;padding:20px 0}
#bo_list.jj-gallery-board .jjg-item{min-width:0;position:relative;border:1px solid #e2e8f0;border-radius:16px;overflow:hidden;background:#fff;transition:transform .2s,box-shadow .2s}
#bo_list.jj-gallery-board .jjg-item:hover{transform:translateY(-4px);box-shadow:0 8px 30px rgba(0,0,0,.08)}
#bo_list.jj-gallery-board .jjg-item-link{display:block;height:100%;text-decoration:none;color:inherit}
#bo_list.jj-gallery-board .jjg-picture{position:relative;aspect-ratio:1/1;background:#fff;overflow:hidden}
#bo_list.jj-gallery-board .jjg-picture img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .3s ease}
#bo_list.jj-gallery-board .jjg-item:hover .jjg-picture img{transform:scale(1.03)}
#bo_list.jj-gallery-board .jjg-no-image{display:flex;width:100%;height:100%;align-items:center;justify-content:center;font-size:48px;color:#cbd5e1}
#bo_list.jj-gallery-board .jjg-new{position:absolute;top:12px;right:12px;padding:2px 12px;border-radius:20px;background:#ef4444;color:#fff;font-size:11px;font-weight:700;letter-spacing:.5px}
#bo_list.jj-gallery-board .jjg-category{position:absolute;bottom:14px;left:14px;max-width:calc(100% - 28px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:4px 14px;border:1px solid rgba(255,255,255,.12);border-radius:14px;background:rgba(0,30,69,.82);color:#fff;font-size:12px;font-weight:600;backdrop-filter:blur(4px)}
#bo_list.jj-gallery-board .jjg-body{display:flex;align-items:center;justify-content:center;min-height:58px;padding:8px 16px;background:#fafbfc;border-top:1px solid #f1f5f9}
#bo_list.jj-gallery-board .jjg-body h3{margin:0;color:#0f172a;text-align:center;font-size:15px;font-weight:600;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}
#bo_list.jj-gallery-board .jjg-empty{text-align:center;padding:80px 20px;color:#94a3b8;font-size:16px}
#bo_list.jj-gallery-board .bo_fx{margin-top:20px}
#bo_list.jj-gallery-board .pg_wrap{clear:both;text-align:center;margin:25px 0 5px}
@media(max-width:1200px){#bo_list.jj-gallery-board .jjg-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}}
@media(max-width:768px){#bo_list.jj-gallery-board .jjg-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:12px 0}#bo_list.jj-gallery-board .jjg-body{min-height:50px;padding:6px 8px}#bo_list.jj-gallery-board .jjg-body h3{font-size:14px}#bo_list.jj-gallery-board .jjg-category{bottom:10px;left:10px;font-size:10px;padding:3px 10px;border-radius:12px}#bo_list.jj-gallery-board .jjg-new{top:10px;right:10px;font-size:10px;padding:1px 10px}}
@media(max-width:480px){#bo_list.jj-gallery-board .jjg-inner{padding:15px 12px 35px}#bo_list.jj-gallery-board .jjg-grid{gap:10px;padding:8px 0}#bo_list.jj-gallery-board .jjg-body{min-height:42px;padding:4px 6px}#bo_list.jj-gallery-board .jjg-body h3{font-size:12px}#bo_list.jj-gallery-board .jjg-category{font-size:9px}}
@media(prefers-reduced-motion:reduce){#bo_list.jj-gallery-board .jjg-item,#bo_list.jj-gallery-board .jjg-picture img{transition:none}}

/* Gallery list: bottom action controls (independent of theme defaults). */
#bo_list.jj-gallery-board .bo_fx{display:flex;justify-content:flex-end;align-items:center;min-height:44px;margin:18px 0 8px;clear:both}
#bo_list.jj-gallery-board .btn_bo_user{display:flex;justify-content:flex-end;align-items:center;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0}
#bo_list.jj-gallery-board .btn_bo_user li{display:block;list-style:none;margin:0;padding:0}
#bo_list.jj-gallery-board .btn_bo_user .btn{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;padding:0;border:1px solid #dce2e9;border-radius:4px;background:#fff;color:#334155;vertical-align:middle;text-decoration:none;cursor:pointer;font-size:15px;line-height:1;box-shadow:none;transition:background .15s,border-color .15s,color .15s}
#bo_list.jj-gallery-board .btn_bo_user .btn:hover,#bo_list.jj-gallery-board .btn_bo_user .btn:focus-visible{background:#f1f5f9;border-color:#94a3b8;color:#0f172a}
#bo_list.jj-gallery-board .btn_bo_user .btn_admin{color:#bd3340}

/* Gallery list: search modal. Not scoped to #bo_list because search sits outside .jjg-inner. */
#bo_list.jj-gallery-board .bo_sch_wrap{display:none;position:fixed;inset:0;z-index:10000;overflow-y:auto;padding:16px}
#bo_list.jj-gallery-board .bo_sch_bg{position:fixed;inset:0;background:rgba(15,23,42,.55);z-index:0;cursor:pointer}
#bo_list.jj-gallery-board .bo_sch{position:relative;z-index:1;width:min(100%,480px);margin:min(17vh,120px) auto 0;padding:26px 28px 30px;background:#fff;border:1px solid #e2e8f0;border-radius:6px;box-shadow:0 18px 65px rgba(0,0,0,.2);min-width:0}
#bo_list.jj-gallery-board .bo_sch h3{margin:0 0 22px;font-size:20px;line-height:1.4;font-weight:700;color:#172437}
#bo_list.jj-gallery-board .bo_sch form{margin:0}
#bo_list.jj-gallery-board .bo_sch select{display:block;width:100%;height:42px;margin:0 0 10px;padding:0 12px;border:1px solid #cbd5e1;background:#fff;color:#334155;font-size:14px;border-radius:4px;box-sizing:border-box}
#bo_list.jj-gallery-board .bo_sch .sch_bar{display:flex;align-items:stretch;width:100%;height:44px}
#bo_list.jj-gallery-board .bo_sch .sch_input{flex:1;min-width:0;width:1%;height:44px;padding:0 12px;border:1px solid #cbd5e1;border-right:0;border-radius:4px 0 0 4px;background:#fff;color:#1e293b;font-size:14px;box-sizing:border-box}
#bo_list.jj-gallery-board .bo_sch .sch_btn{flex:none;display:flex;align-items:center;justify-content:center;width:48px;height:44px;padding:0;border:1px solid #163c70;border-radius:0 4px 4px 0;background:#163c70;color:#fff;font-size:16px;cursor:pointer}
#bo_list.jj-gallery-board .bo_sch .sch_btn:hover{background:#102f5b}
#bo_list.jj-gallery-board .bo_sch .bo_sch_cls{position:absolute;top:18px;right:18px;display:flex;align-items:center;justify-content:center;width:30px;height:30px;padding:0;border:0;background:transparent;color:#64748b;font-size:18px;cursor:pointer}
#bo_list.jj-gallery-board .bo_sch .bo_sch_cls:hover{color:#0f172a}
@media(max-width:480px){#bo_list.jj-gallery-board .bo_sch{margin:12vh auto 0;padding:22px 18px 24px}#bo_list.jj-gallery-board .bo_sch h3{font-size:18px}}
