*{box-sizing:border-box}body{margin:0;background:#f7f8fa;color:#1d2230;font:15px/1.65 system-ui,-apple-system,'Malgun Gothic',sans-serif}.wrap{width:100%;max-width:1024px;padding:0 20px 80px;margin:auto}.site-head{padding:22px 0}.brand{font-size:17px;font-weight:800;letter-spacing:-.4px;text-decoration:none;color:#20212a}.brand span{font-size:11px;font-weight:600;letter-spacing:2px;color:#eb613b;margin-left:10px}.poster{width:100%;max-width:1024px;height:auto;display:block;margin:12px auto 32px;border-radius:12px;box-shadow:0 12px 45px #10182818}.panel{padding:30px;background:white;border:1px solid #e8eaee;border-radius:15px;margin:22px 0;box-shadow:0 3px 14px #10182806}.panel h1,.panel h2{margin:0 0 16px;font-size:24px;letter-spacing:-1px}.section-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:18px}.section-head h1{margin:0}.muted,.hint{color:#777e8a;font-size:13px}.btn{display:inline-block;cursor:pointer;border:0;border-radius:8px;background:#e84e45;color:white;text-decoration:none;font-weight:750;padding:12px 19px;font-size:14px}.btn.secondary{background:#343944}.btn.outline{border:1px solid #cbd1d9;background:white;color:#20232b}.btn.small{padding:7px 12px;font-size:12px}.btn:disabled{opacity:.5}.scroll{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left}th{background:#f4f5f7;color:#333b46;font-weight:750}th,td{padding:15px 13px;border-bottom:1px solid #edf0f3}td a{color:#242831;text-decoration:none}td a:hover{text-decoration:underline}.post-title{font-weight:700}.excerpt{color:#858b96;font-size:13px;margin-left:8px}.num{width:85px}.date{width:130px}.author{width:125px}.empty{text-align:center;padding:45px;color:#777}.pagination{display:flex;justify-content:center;gap:7px;padding-top:20px;flex-wrap:wrap}.pagination a,.pagination strong{display:inline-block;padding:7px 12px;border:1px solid #dfe3e8;border-radius:6px;text-decoration:none;color:#333}.pagination strong{background:#333;color:#fff}label.field{display:block;font-weight:700;margin:18px 0 7px}input[type=text],input[type=password],input[type=tel],textarea{width:100%;border:1px solid #ccd2db;background:white;border-radius:8px;font:inherit;padding:12px 13px}textarea{min-height:230px;resize:vertical}input:focus,textarea:focus{outline:2px solid #f4a497;border-color:#ec7769}.checkbox{display:flex;gap:9px;align-items:flex-start;margin:18px 0;color:#404958}.checkbox input{margin-top:6px}.buttons{display:flex;gap:8px;flex-wrap:wrap;margin-top:24px}.note{background:#f7f8fa;border-radius:8px;padding:14px;color:#59616d;font-size:13px}.error{background:#fff0f0;color:#a23b31;border-radius:8px;padding:12px}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:16px}.admin-details{white-space:pre-wrap;overflow-wrap:anywhere}.top-actions{display:flex;gap:8px;flex-wrap:wrap}.login-box{max-width:420px;margin:60px auto}.action-cell{white-space:nowrap}.action-cell form{display:inline}.danger{background:#ad3333}.sr{position:absolute;clip:rect(0,0,0,0)}@media(max-width:640px){.wrap{padding:0 12px 50px}.brand{font-size:14px}.brand span{display:block;margin-left:0}.panel{padding:17px 14px;border-radius:10px}.panel h1,.panel h2{font-size:20px}th,td{padding:12px 7px;font-size:12px}.num{width:42px}.author{width:65px}.date{width:85px}.excerpt{display:none}.grid2{grid-template-columns:1fr}.poster{margin:0 auto 17px}.btn{padding:10px 13px}}

/* /stage/ 신청 목록: PC 레이아웃 유지, 모바일 4열 가독성 개선 */
.stage-list { table-layout:fixed; }
.stage-list .mobile-title { display:none; }
.stage-list td:nth-child(3) { overflow-wrap:anywhere; }
@media (max-width:640px) {
  .stage-list-scroll { overflow-x:visible; width:100%; }
  .stage-list { width:100%; min-width:0; table-layout:fixed; }
  .stage-list th,.stage-list td { padding:11px 4px; font-size:11px; vertical-align:top; }
  .stage-list th.num,.stage-list td:nth-child(1) { width:34px; text-align:center; }
  .stage-list th.author,.stage-list td:nth-child(2) { width:53px; text-align:center; overflow-wrap:anywhere; }
  .stage-list th.date,.stage-list td:nth-child(4) { width:74px; text-align:center; font-size:10px; white-space:nowrap; }
  .stage-list td:nth-child(3) { padding-left:7px; padding-right:7px; }
  .stage-list .desktop-title { display:none; }
  .stage-list .mobile-title { display:block; font-size:12px; line-height:1.5; font-weight:750; white-space:normal; overflow-wrap:anywhere; }
  .stage-list .excerpt { display:block; margin:4px 0 0; font-size:11px; line-height:1.5; color:#7b8290; white-space:normal; overflow-wrap:anywhere; }
}

/* 모바일 신청 목록: 이름 > 제목 > 내용 > 날짜 순서의 세로형 카드 */
@media (max-width:640px) {
  .stage-list-scroll { overflow:visible; }
  .stage-list, .stage-list tbody, .stage-list tr, .stage-list td { display:block; width:100%; }
  .stage-list thead { display:none; }
  .stage-list tr { position:relative; padding:16px 16px 14px; margin-bottom:12px; border:1px solid #e7eaf0; border-radius:12px; background:#fff; }
  .stage-list td { border:0; padding:0 !important; text-align:left !important; font-size:13px !important; white-space:normal !important; }
  .stage-list td:nth-child(1) { display:none; }
  .stage-list td:nth-child(2) { margin-bottom:7px; font-weight:800; font-size:14px !important; color:#222b3a; }
  .stage-list td:nth-child(3) { margin-bottom:9px; }
  .stage-list td:nth-child(3) a { display:block; text-decoration:none; }
  .stage-list .desktop-title { display:none; }
  .stage-list .mobile-title { display:block; margin:0 0 7px; font-size:15px; font-weight:800; line-height:1.55; color:#252a35; overflow-wrap:anywhere; }
  .stage-list .excerpt { display:block; margin:0; color:#687282; font-size:13px; line-height:1.65; overflow-wrap:anywhere; }
  .stage-list td:nth-child(4) { width:auto !important; text-align:left !important; font-size:12px !important; color:#959ba6; }
  .stage-list td.empty { padding:25px 8px !important; text-align:center !important; }
}

/* 게시판 사진: PC에서는 작은 썸네일, 모바일에서는 카드 너비에 맞춰 표시 */
.story-thumb{width:88px;height:74px;object-fit:cover;border-radius:10px;float:left;margin:0 13px 0 0;background:#f2f3f5;display:block}
.stage-list td:nth-child(3) a::after{content:"";display:block;clear:both}
.admin-thumb{width:54px;height:44px;object-fit:cover;border-radius:6px;vertical-align:middle;margin-right:8px}
.current-photo{margin:14px 0;display:flex;flex-direction:column;align-items:flex-start;gap:10px}.current-photo img{max-width:100%;max-height:320px;border-radius:10px}
input[type=file]{display:block;width:100%;padding:12px;border:1px dashed #b6bec8;border-radius:10px;background:#fafbfc}
@media(max-width:640px){.story-thumb{float:none;width:100%;height:185px;object-fit:cover;margin:0 0 12px;border-radius:10px}.stage-list td:nth-child(3) a{display:block}}

/* PC: thumbnail at left, full title and excerpt stacked at right */
@media (min-width:641px) {
 .stage-list td:nth-child(3) a {display:flow-root; min-height:74px;}
 .stage-list .desktop-title {display:block; font-size:15px; line-height:1.5; overflow-wrap:anywhere; margin:2px 0 6px;}
 .stage-list .excerpt {display:block; margin:0; font-size:13px; line-height:1.55; overflow-wrap:anywhere;}
 .stage-list .story-thumb {float:left; width:88px; height:74px; margin:0 14px 0 0;}
}

/* Thumbnails are actual stored 90x75 JPG files. Never upscale on mobile. */
.story-thumb, .stage-list .story-thumb { width:90px; height:75px; max-width:90px; max-height:75px; object-fit:cover; }
@media(max-width:640px){ .story-thumb, .stage-list .story-thumb { float:none; display:block; width:90px; height:75px; margin:0 0 10px; border-radius:8px; } }


/* 2026-10-29: List preview layout, desktop left thumbnail / mobile inline text wrapping */
.stage-list .story-link { display:flow-root; color:inherit; text-decoration:none; }
.stage-list .story-title { display:block; margin:0 0 6px; font-weight:800; line-height:1.55; overflow-wrap:break-word; word-break:keep-all; }
.stage-list .story-preview { display:flow-root; color:#687282; font-size:13px; line-height:1.7; white-space:normal; overflow-wrap:break-word; word-break:keep-all; }
.stage-list .story-thumb { width:90px; height:75px; max-width:90px; max-height:75px; border-radius:9px; object-fit:cover; background:#f2f3f5; }
.stage-list .story-thumb-pc { display:block; float:left; margin:0 14px 0 0; }
.stage-list .story-thumb-mobile { display:none; }
@media(max-width:640px) {
  .stage-list .story-link { display:block !important; }
  .stage-list .story-title { display:block !important; font-size:16px; margin:0 0 10px; }
  .stage-list .story-preview { display:flow-root !important; font-size:13px; line-height:1.75; }
  .stage-list .story-thumb-pc { display:none !important; }
  .stage-list .story-thumb-mobile { display:block !important; float:left !important; width:90px !important; height:75px !important; margin:2px 12px 5px 0 !important; }
}
