/*!***************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[14].oneOf[10].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[14].oneOf[10].use[3]!./src/app/style.css ***!
  \***************************************************************************************************************************************************************************************************************************************************************/
/* 썸네일용 Pretendard (public/fonts 에 포함, SIL OFL 1.1) */
@font-face{font-family:"Pretendard";font-weight:900;font-style:normal;font-display:swap;src:url("/fonts/Pretendard-Black.woff2") format("woff2")}
@font-face{font-family:"Pretendard";font-weight:600;font-style:normal;font-display:swap;src:url("/fonts/Pretendard-SemiBold.woff2") format("woff2")}
@import url('https://fonts.googleapis.com/css2?family=Gothic+A1:wght@400;500;600;700;800&display=swap');
:root{font-family:'Gothic A1',sans-serif;color:#202b3e;background:#f6f8fc}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer;background:#3439dc;border:1px solid #3439dc;color:white;border-radius:10px;padding:11px 15px;font-weight:700;font-size:12px}button:disabled{opacity:.4;cursor:not-allowed}input,select,textarea{border:1px solid #dce2eb;background:white;border-radius:10px;padding:11px 12px;min-width:0;width:100%;color:#202b3e;font-size:12px}textarea{min-height:110px;resize:vertical}a{color:#353ed1;text-decoration:none;font-size:12px;font-weight:700}h1{font-size:27px;margin:7px 0}h2{font-size:16px;margin:0 0 6px}h3{font-size:14px;margin:0 0 12px}p{font-size:12px;color:#8790a0;line-height:1.65;margin:6px 0}strong{font-size:12px}.shell{min-height:100vh;display:flex}.sidebar{width:230px;background:#fff;border-right:1px solid #e8ecf3;padding:28px 16px;position:-webkit-sticky;position:sticky;top:0;height:100vh;flex-shrink:0}.brand{display:flex;align-items:center;gap:10px;font-size:18px;font-weight:800;padding:0 12px 40px}.brand span:not(.brandIcon){display:block;font-size:10px;color:#8993a6;letter-spacing:2px;font-weight:600;margin-top:2px}.brandIcon{background:#3439dc;color:white;padding:9px;border-radius:12px}.sideTitle{color:#a8b0c1;font-size:9px;font-weight:800;letter-spacing:1.6px;padding:10px 14px}.nav{background:transparent;border:0;color:#657084;text-align:left;width:100%;display:flex;gap:13px;font-size:13px;margin:3px 0;padding:14px;border-radius:11px}.nav.active{background:#eff0fe;color:#3439dc}.sideFoot{position:absolute;bottom:22px;padding:0 12px;color:#a3aabd;font-size:10px}.content{flex:1 1;max-width:calc(100% - 230px);padding:32px 40px 70px}.header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.crumb,.eyebrow{font-size:10px;color:#9aa3b5;letter-spacing:1.4px;font-weight:800}.accountBadge{background:white;border:1px solid #e5eaf2;border-radius:30px;padding:12px 15px;font-size:12px;font-weight:700}.dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#20b17b;margin-left:10px}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:15px;gap:15px;margin-bottom:24px}.metric{background:white;border:1px solid #e8ebf2;border-radius:16px;padding:20px}.metric span,.metric small{display:block;color:#8a95a7;font-size:11px}.metric b{font-size:26px;display:block;margin:12px 0 4px}.workspace{display:grid;grid-template-columns:minmax(265px,0.85fr) minmax(400px,1.6fr);grid-gap:18px;gap:18px;align-items:start}.surface{background:white;border:1px solid #e8ebf1;border-radius:17px;padding:22px;margin-bottom:18px}.sectionhead{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:16px}.sectionhead h2,.sectionhead h3{margin:0}.light{background:#f2f4f9;border-color:#e4e8f0;color:#46536a}.danger{color:#d24758;background:#fff5f6;border-color:#ffe3e5}.postList{padding:22px 15px}.postList>.sectionhead,.postList>.search{margin-left:7px;margin-right:7px;width:calc(100% - 14px)}.postScroll{max-height:650px;overflow:auto}.post{display:flex;align-items:center;gap:12px;text-align:left;width:100%;padding:13px 8px;background:white;border:1px solid transparent;border-radius:12px;color:inherit}.post.chosen{background:#f0f1ff;border-color:#e0e2ff}.postThumb{width:53px;height:53px;flex-shrink:0;border-radius:10px;background:linear-gradient(135deg,#e9e5f5,#d4d9ef);display:grid;place-items:center;font-size:26px;color:#7c80b6}.postInfo{flex:1 1;min-width:0}.postInfo strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.postInfo span,.postInfo small{display:block;color:#8c95a5;font-size:10px;margin-top:6px}.chevron{font-size:22px;color:#a1aabe}.detail{min-width:0}.rule{padding:16px;border:1px solid #e9ebf3;border-radius:12px;margin:10px 0}.ruleMessage{white-space:pre-wrap;background:#f7f8fc;padding:12px;border-radius:8px;font-size:12px;line-height:1.8;color:#5b667b;margin:14px 0}.flex{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.tag{font-size:10px;font-weight:800;display:inline-block;border-radius:40px;padding:7px 10px;white-space:nowrap}.tag.green{background:#e7f8ef;color:#148654}.tag.gray{background:#eff2f7;color:#778396}.tag.red{background:#fff0f1;color:#d04a5a}.two{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px}label:not(.check){display:block;font-size:12px;font-weight:700;margin-bottom:12px}label input,label select,label textarea{display:block;margin-top:8px;font-weight:400}.check{display:flex;gap:8px;align-items:center;font-size:12px;margin:12px 0}.check input{width:16px}.count{background:#eef0f8;border-radius:20px;padding:3px 7px;font-size:10px;color:#59637b}.empty{text-align:center;padding:35px 12px;color:#a0a8b8;font-size:12px}.empty.large{padding:90px 20px;line-height:2}.filters{display:grid;grid-template-columns:1fr 150px 1fr;grid-gap:10px;gap:10px;margin-bottom:16px}.tableWrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:11px;min-width:640px}td,th{border-bottom:1px solid #eff1f5;padding:14px 9px;text-align:left}th{color:#8d96a6;font-weight:700}td{color:#626e80;max-width:250px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.comment{color:#252f42;font-weight:700}.paginate{display:flex;align-items:center;justify-content:space-between;margin-top:18px;font-size:12px}.setting{display:flex;justify-content:space-between;border-bottom:1px solid #ecedf3;padding:15px 0;gap:12px;font-size:12px}pre{background:#f6f7fc;border-radius:8px;padding:14px;overflow:auto;font-size:11px}.toast{position:fixed;bottom:24px;right:24px;max-width:520px;background:#28344c;color:white;border-radius:12px;padding:15px 18px;font-size:12px;box-shadow:0 8px 30px #15213a33;display:flex;align-items:center;gap:20px}.toast button{padding:0;background:transparent;border:0;font-size:20px}.login{max-width:520px}.login .flex input{flex:1 1}@media(max-width:1100px){.content{padding:24px}.workspace{grid-template-columns:1fr}.postScroll{max-height:260px}.metrics{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){.shell{display:block}.sidebar{width:100%;height:auto;position:static;display:flex;align-items:center;gap:4px;padding:12px;overflow:auto}.brand{padding:0 15px 0 0;font-size:14px}.brand span:not(.brandIcon),.sideTitle,.sideFoot,.nav span{display:none!important}.nav{width:auto}.content{max-width:100%;padding:18px}.header{align-items:flex-start}.accountBadge{font-size:10px}.metrics{gap:8px}.metric{padding:15px}.metric b{font-size:22px}.surface{padding:15px}.filters{grid-template-columns:1fr}.two{grid-template-columns:1fr}}
.moreButton{width:calc(100% - 16px);margin:10px 8px}

.retryBar{margin-bottom:14px}.retryBar button{white-space:nowrap}

/* 2026-10: readability and responsive dashboard alignment */
:root{--ui-border:#e6eaf2;--ui-muted:#66758a;--ui-ink:#202b3e}
body{font-size:14px;line-height:1.55}
button{font-size:13px;min-height:40px;line-height:1.35;transition:background-color .16s ease,border-color .16s ease}
button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #b7baff;outline-offset:2px}
input,select,textarea{font-size:13px}
h2{font-size:17px;line-height:1.4}
h3{font-size:15px;line-height:1.45}
p{font-size:13px;color:var(--ui-muted)}
strong{font-size:inherit}
.content{min-width:0}
.workspace{grid-template-columns:minmax(280px,.85fr) minmax(0,1.6fr)}
.surface{min-width:0;overflow-wrap:anywhere}
.sectionhead{min-width:0;flex-wrap:wrap}
.sectionhead>div{min-width:0}
.postList{padding:20px 16px}
.postList>.sectionhead,.postList>.search{margin-left:0;margin-right:0;width:100%}
.postList>.search{margin-bottom:12px}
.postScroll{display:flex;flex-direction:column;gap:6px}
.post{padding:12px;min-height:78px;gap:12px;border-color:transparent}
.post:hover{background:#f7f8ff;border-color:#e3e6fa}
.post.chosen{background:#f0f2ff;border-color:#d9ddff}
.postThumb{width:54px;height:54px;font-size:23px}
.postInfo{display:flex;flex-direction:column;gap:3px;min-width:0}
.postInfo strong{font-size:13px;line-height:1.5;white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}
.postInfo span,.postInfo small{font-size:11px;line-height:1.45;margin:0;overflow-wrap:anywhere}
.chevron{flex-shrink:0}
.settingsPanel>.setting{display:grid;grid-template-columns:minmax(145px,36%) minmax(0,1fr);grid-column-gap:20px;column-gap:20px;align-items:start;padding:16px 0;font-size:13px}
.settingsPanel>.setting span{color:#627087;font-weight:600}
.settingsPanel>.setting strong{min-width:0;text-align:right;font-size:13px;font-weight:700;line-height:1.7;white-space:normal;overflow-wrap:anywhere;word-break:break-word}
.settingsPanel .settingError{color:#b73d4b}
.settingsPanel>.sectionhead.subscriptionHead{margin-top:26px;align-items:center}
.settingsPanel>button.light{margin:6px 0 12px}
.settingsPanel pre{max-width:100%;white-space:pre-wrap;overflow-wrap:anywhere}
.settingsPanel>.sectionhead button{max-width:100%;white-space:normal}
@media(max-width:1100px){.workspace{grid-template-columns:1fr}.postScroll{max-height:340px}}
@media(max-width:700px){
 .content{padding:18px 14px 40px}
 .header{gap:10px;flex-wrap:wrap}
 .surface{padding:17px}
 .postList{padding:16px}
 .post{padding:11px;min-height:75px}
 .settingsPanel>.setting{grid-template-columns:1fr;gap:6px;padding:13px 0}
 .settingsPanel>.setting strong{text-align:left}
 .settingsPanel>.sectionhead.subscriptionHead{align-items:stretch}
 .settingsPanel>.sectionhead.subscriptionHead button{width:100%}
}

/* 2026-10: typography, readability and responsive dashboard */
html{font-size:16px} body{font-size:15px;line-height:1.6;color:#20283c}
button,input,select,textarea{font-size:14px;line-height:1.5}
button{min-height:40px;padding:10px 15px}
input,select,textarea{min-height:44px;font-size:14px}
p{font-size:14px;color:#697589;line-height:1.7}
strong{font-size:14px} a{font-size:14px}
h1{font-size:30px;line-height:1.3}h2{font-size:20px}h3{font-size:16px}
.sidebar{width:208px;padding:24px 14px}.content{max-width:calc(100% - 208px);min-width:0;padding:28px 30px 64px}
.brand{padding:6px 12px 32px;gap:0}.brandName{font-size:22px;font-weight:800;letter-spacing:-.7px;color:#252b40}
.sideTitle{font-size:11px}.nav{font-size:15px;padding:13px 12px}.sideFoot{font-size:11px}
.crumb,.eyebrow{font-size:12px;letter-spacing:.7px}.accountBadge{font-size:13px;padding:9px 14px}
.headerActions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.logoutButton{min-height:38px;font-size:13px}
.metric{min-width:0}.metric span,.metric small{font-size:13px}.metric b{font-size:32px;line-height:1.25}
.workspace{grid-template-columns:minmax(300px,.85fr) minmax(0,1.6fr)}
.postInfo strong{font-size:15px;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;white-space:normal;overflow:hidden}
.postInfo span,.postInfo small{font-size:12px;line-height:1.5;margin-top:4px}.post{padding:13px 10px}
.ruleMessage,.setting{font-size:14px}.tag{font-size:12px}.empty{font-size:14px}.check,label:not(.check){font-size:14px}
.tableWrap{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}
table{font-size:13px;min-width:900px;width:100%}th,td{padding:15px 12px;line-height:1.55;font-size:13px;vertical-align:middle}
th{font-size:12px;white-space:nowrap}td{white-space:normal;overflow-wrap:anywhere;max-width:260px}
td.comment{min-width:160px;max-width:320px;white-space:normal;line-height:1.6}td:first-child{white-space:nowrap}
.filters{grid-template-columns:minmax(0,1fr) 175px minmax(0,1fr)}
.setting{display:grid;grid-template-columns:minmax(180px,34%) minmax(0,1fr);align-items:start;grid-gap:18px;gap:18px}
.setting strong{font-size:14px;text-align:left;overflow-wrap:anywhere;min-width:0}
.toast{font-size:14px;line-height:1.6}pre{font-size:12px}
@media(max-width:1150px){.content{padding:24px}.workspace{grid-template-columns:1fr}.postScroll{max-height:310px}}
@media(max-width:700px){.sidebar{width:100%;height:auto;position:static;padding:10px 12px;gap:3px}.brand{padding:4px 12px 4px 0}.brandName{font-size:17px}.nav{font-size:13px;padding:10px 9px}.content{max-width:100%;padding:18px 14px}.header{gap:12px;flex-wrap:wrap}.headerActions{width:100%;justify-content:flex-start}.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.metric b{font-size:25px}.surface{padding:17px}.filters{grid-template-columns:1fr}.setting{grid-template-columns:1fr;gap:5px}.setting strong{font-size:14px}.postInfo strong{font-size:14px}}

/* 2026-10: 멀티 계정 · 관리자 로그인 */
.centered{min-height:100vh;display:grid;place-items:center;padding:24px}
.centered .login{width:100%;max-width:420px;display:flex;flex-direction:column;gap:4px}
.centered .login .brandName{margin-bottom:18px}
.centered .login button{margin-top:8px;width:100%}
.accountsTitle{margin-top:22px}
.accountList{display:flex;flex-direction:column;gap:2px;max-height:calc(100vh - 420px);overflow:auto}
.accountItem{background:transparent;border:0;color:#4b566b;text-align:left;width:100%;display:flex;align-items:center;gap:8px;padding:10px 12px;border-radius:10px;font-size:14px;font-weight:600;min-height:0}
.accountItem .dot{margin-left:0}
.accountItem span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.accountItem:hover{background:#f6f7fc}
.accountItem.active{background:#eff0fe;color:#3439dc}
.connectLink{display:block;padding:10px 12px;border-radius:10px;font-size:14px;color:#3439dc}
.connectLink:hover{background:#f6f7fc}
.dot.off{background:#d04a5a}
.adminName{font-size:13px;color:#7a8597;font-weight:600}
.banner{background:#fff4f5;border:1px solid #ffdfe3;color:#9c2f3d;border-radius:14px;padding:14px 18px;margin-bottom:18px;font-size:14px;display:flex;gap:12px;flex-wrap:wrap;align-items:center;justify-content:space-between}
.buttonLink{display:inline-block;background:#3439dc;border:1px solid #3439dc;color:#fff;border-radius:10px;padding:10px 15px;font-weight:700;font-size:13px;line-height:1.35;white-space:nowrap}
.buttonLink.light{background:#f2f4f9;border-color:#e4e8f0;color:#46536a}
.empty.large .buttonLink{margin-top:16px}
.postThumb{overflow:hidden}
.postThumb img{width:100%;height:100%;object-fit:cover;display:block}
.hint{margin-top:16px;background:#f7f8fc;border-radius:10px;padding:12px 14px;font-size:13px}
.errorText{color:#b73d4b}
.flex.nowrap{flex-wrap:nowrap}
@media(max-width:700px){.accountsTitle{display:none}.accountList{flex-direction:row;max-height:none}.accountItem{width:auto;padding:8px 10px;font-size:13px}.connectLink span{display:none}.adminName{display:none}}
.brandName{white-space:nowrap}
.spaced{margin-top:26px}
.ruleReply{white-space:pre-wrap;background:#f3fbf6;border:1px solid #dff3e7;padding:10px 12px;border-radius:8px;font-size:13px;line-height:1.7;color:#3f6b53;margin:-6px 0 14px}
.ruleReply span{display:block;font-size:11px;font-weight:800;color:#148654;margin-bottom:2px}
.muted{color:#97a1b2;font-weight:400}
textarea.short{min-height:70px}
.hint.small{font-size:12px;margin-top:-6px;padding:8px 12px}

/* 2026-11: 새 게시물 · 썸네일 · AI 캡션 */
.composer{min-width:0}
.segmented{display:inline-flex;background:#f2f4f9;border:1px solid #e4e8f0;border-radius:12px;padding:4px;gap:4px;margin-bottom:8px}
.segmented button{background:transparent;border:0;color:#5b667b;min-height:36px;padding:8px 16px}
.segmented button.active{background:#fff;color:#3439dc;box-shadow:0 1px 4px #1b245014}
.dropzone{display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:4px;border:2px dashed #d5dbea;border-radius:14px;padding:28px 16px;text-align:center;cursor:pointer;background:#fafbff;margin:12px 0!important}
.dropzone:hover{border-color:#3439dc;background:#f4f5ff}
.dropzone input{display:none!important}
.dropzone strong{font-size:15px;color:#3439dc}
.dropzone span{font-size:12px;color:#8a95a7;font-weight:400}
.mediaGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));grid-gap:12px;gap:12px;margin:8px 0 16px}
.mediaItem{border:1px solid #e8ebf3;border-radius:12px;overflow:hidden;background:#fff}
.mediaThumb{position:relative;aspect-ratio:4/5;background:#eef1f7}
.mediaThumb img,.mediaThumb video{width:100%;height:100%;object-fit:cover;display:block}
.mediaNo{position:absolute;top:8px;left:8px;background:#000a;color:#fff;font-size:12px;font-weight:800;border-radius:20px;padding:2px 9px}
.mediaBadge{position:absolute;top:8px;right:8px;background:#3439dc;color:#fff;font-size:11px;font-weight:800;border-radius:20px;padding:3px 9px}
.mediaActions{display:flex;flex-wrap:wrap;gap:4px;padding:8px}
.mediaActions button{min-height:30px;padding:4px 9px;font-size:12px}
.fileButton{display:inline-flex!important;align-items:center;cursor:pointer;background:#f2f4f9;border:1px solid #e4e8f0;color:#46536a;border-radius:10px;padding:10px 15px;font-weight:700;font-size:13px;margin:0!important}
.fileButton input{display:none!important}
.coverRow{display:flex;align-items:center;gap:12px;margin-top:12px;font-size:13px;color:#5b667b}
.coverRow img{width:64px;height:80px;object-fit:cover;border-radius:8px}
.thumbEditor{display:grid;grid-template-columns:minmax(260px,420px) minmax(0,1fr);grid-gap:22px;gap:22px;align-items:start}
.thumbPreview canvas{width:100%;height:auto;border-radius:12px;box-shadow:0 4px 20px #1b24501f;display:block;background:#fff}
.thumbPreview canvas.draggable{cursor:-webkit-grab;cursor:grab;touch-action:none}
.thumbPreview canvas.draggable:active{cursor:-webkit-grabbing;cursor:grabbing}
.thumbControls label{margin-bottom:10px}
.slider{display:block;margin-bottom:10px}
.slider span{display:flex;justify-content:space-between;font-size:13px;font-weight:700}
.slider b{font-weight:600;color:#3439dc}
.slider input[type=range]{width:100%;min-height:0;padding:0;border:0;margin-top:6px;accent-color:#3439dc;background:transparent}
.three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:10px;gap:10px}
.captionBox{min-height:200px;line-height:1.7}
.aiPanel{margin-top:16px;border:1px solid #e6e9f6;border-radius:12px;padding:12px 16px;background:#fbfbff}
.aiPanel summary{cursor:pointer;font-weight:800;font-size:14px;color:#3439dc;margin-bottom:10px}
.aiPanel[open] summary{margin-bottom:14px}
.publishBar{display:flex;justify-content:space-between;align-items:center;gap:16px;position:-webkit-sticky;position:sticky;bottom:12px;z-index:5;box-shadow:0 8px 30px #15213a1a}
.publishBar>button{min-width:140px;min-height:48px;font-size:15px}
.publishStatus{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:8px}
.progress{height:8px;background:#eef0f8;border-radius:10px;overflow:hidden}
.progress div{height:100%;background:#3439dc;transition:width .3s}
@media(max-width:900px){.thumbEditor{grid-template-columns:1fr}.three{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.publishBar{flex-direction:column;align-items:stretch}.mediaGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.segmented{display:flex}.segmented button{flex:1 1}}
.thumbControls textarea.short{min-height:110px}

/* 2026-11-05: 레이아웃 정리 (겹침·줄바꿈 수정) */
.publishBar{position:static;box-shadow:none;bottom:auto}
.publishBar>p{margin:0;flex:1 1;min-width:0}
.publishStatusCard{border-left:4px solid #3439dc}
.publishStatusCard.done{border-left-color:#20b17b;background:#f6fdf9}
.publishStatusCard.failed{border-left-color:#d04a5a;background:#fff8f9}
.statusHead{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.statusHead strong{font-size:15px;min-width:0;overflow-wrap:anywhere}
button.small{min-height:32px;padding:5px 12px;font-size:12px}
.mediaGrid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}
.mediaItem{display:flex;flex-direction:column}
.mediaBadge{top:auto;right:auto;bottom:8px;left:8px}
.mediaRemove{position:absolute;top:6px;right:6px;width:28px;height:28px;min-height:0;padding:0;border-radius:50%;background:#000000a6;border:0;color:#fff;font-size:13px;line-height:28px;display:grid;place-items:center}
.mediaRemove:hover{background:#d04a5a}
.mediaMove{position:absolute;bottom:6px;right:6px;display:flex;gap:4px}
.mediaMove button{width:30px;height:30px;min-height:0;padding:0;border-radius:50%;background:#ffffffe6;border:1px solid #0000001a;color:#202b3e;font-size:18px;line-height:1;display:grid;place-items:center}
.mediaMove button:disabled{opacity:.35}
.mediaThumbBtn{margin:8px;min-height:34px;padding:6px 10px;font-size:12px;white-space:nowrap}
.mediaActions{display:none}
.composer>.flex,.composer .flex{row-gap:8px}
.toast{bottom:20px;top:auto;right:20px;z-index:50;max-width:min(520px,calc(100vw - 32px))}
@media(max-width:700px){
 .toast{left:12px;right:12px;bottom:12px;top:auto}
 .publishBar{flex-direction:column;align-items:stretch}
 .publishBar>button{width:100%}
 .mediaGrid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
.mediaGrid{align-items:start}
.tableWrap button,.tableWrap .buttonLink{white-space:nowrap}
.tableWrap td .flex{flex-wrap:nowrap}

/* 2026-11-05b: 아이콘 · 예약 · 색상 · 모바일 */
.icon{display:inline-block;vertical-align:middle;flex-shrink:0}
button .icon,a .icon{margin-top:-2px}
.nav{align-items:center}
.nav .icon{opacity:.85}
.connectLink{display:flex;align-items:center;gap:6px}
.iconLink{display:inline-flex;align-items:center;gap:4px}
.chevron{display:grid;place-items:center;color:#a1aabe}
.toast button{display:grid;place-items:center;min-height:0;color:#fff}
button.small,.buttonLink.small{display:inline-flex;align-items:center;gap:4px}
.buttonLink{display:inline-flex;align-items:center;gap:6px}
.dropzone .icon{color:#3439dc;margin-bottom:4px}
.segmented button{display:inline-flex;align-items:center;justify-content:center;gap:6px}
.aiPanel summary{display:flex;align-items:center;gap:6px}
.statusTitle{display:inline-flex;align-items:center;gap:8px}
.publishStatusCard.done .statusTitle .icon{color:#20b17b}
.publishStatusCard.failed .statusTitle .icon{color:#d04a5a}
.publishStatusCard.uploading .statusTitle .icon,.publishStatusCard.publishing .statusTitle .icon{color:#3439dc}
.mediaMove button .icon,.mediaRemove .icon{margin:0}
.dm-hidden{display:none}

/* 예약 */
.publishBar{flex-wrap:wrap}
.publishWhen{display:flex;align-items:center;gap:14px;flex-wrap:wrap;flex:1 1;min-width:0}
.publishWhen .segmented{margin:0}
.whenInput{width:auto;min-width:220px}
.publishButton{min-width:150px;min-height:48px;font-size:15px}
.schedList{display:flex;flex-direction:column;gap:10px}
.schedItem{display:flex;gap:14px;padding:12px;border:1px solid #e9ebf3;border-radius:12px;background:#fff;align-items:flex-start}
.schedItem.done{background:#f8fdfa}
.schedItem.failed{background:#fffafb}
.schedThumb{position:relative;width:64px;height:80px;flex-shrink:0;border-radius:8px;overflow:hidden;background:#eef1f7;display:grid;place-items:center;color:#8a95a7}
.schedThumb img{width:100%;height:100%;object-fit:cover}
.schedThumb span{position:absolute;right:4px;bottom:4px;background:#000a;color:#fff;font-size:11px;font-weight:800;border-radius:10px;padding:1px 7px}
.schedBody{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:8px}
.schedTop{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.schedTop strong{display:inline-flex;align-items:center;gap:4px;font-size:15px}
.schedCaption{margin:0;font-size:13px;color:#5b667b;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;white-space:pre-line}
.schedEdit{display:flex;flex-direction:column;gap:8px}
.errorText.small{font-size:12px;margin:0}

/* 썸네일 색상 */
.colorGroup{display:flex;flex-direction:column;gap:10px;margin:4px 0 14px}
.colorRow{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.colorRow>span{font-size:13px;font-weight:700}
.swatches{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.swatch{width:30px;height:30px;min-height:0;padding:0;border-radius:50%;border:2px solid #fff;box-shadow:0 0 0 1px #d5dbea;cursor:pointer}
.swatch.on{box-shadow:0 0 0 2px #3439dc}
.swatch.picker{position:relative;margin:0!important;background:conic-gradient(red,yellow,lime,aqua,blue,magenta,red);overflow:hidden;display:block!important}
.swatch.picker input{position:absolute;inset:-8px;width:50px;height:50px;opacity:0;cursor:pointer;margin:0!important;padding:0;border:0;min-height:0}

/* 휴대폰 상단 바 · 하단 탭 (기본은 숨김) */
.mobileBar,.tabBar{display:none}
.iconButton{background:transparent;border:0;color:#46536a;min-height:40px;width:40px;padding:0;display:grid;place-items:center;border-radius:10px}
.iconButton:hover{background:#f2f4f9}

@media(max-width:700px){
 /* 사이드바 대신 상단 바 + 하단 탭 */
 .sidebar{display:none!important}
 .shell{display:block}
 .mobileBar{display:flex;align-items:center;gap:10px;position:-webkit-sticky;position:sticky;top:0;z-index:20;background:#ffffffee;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid #e8ecf3;padding:8px 12px}
 .mobileBar .brandName{font-size:17px;white-space:nowrap}
 .accountSelect{flex:1 1;min-width:0;min-height:40px;padding:8px 10px;font-weight:700;font-size:14px;border-radius:10px}
 .tabBar{display:grid;grid-template-columns:repeat(4,1fr);position:fixed;left:0;right:0;bottom:0;z-index:30;background:#fff;border-top:1px solid #e3e7ef;padding:6px 4px calc(6px + env(safe-area-inset-bottom))}
 .tabBar button{background:transparent;border:0;color:#7b8598;display:flex;flex-direction:column;align-items:center;gap:2px;min-height:52px;padding:4px 0;font-size:11px;font-weight:700;border-radius:10px}
 .tabBar button.active{color:#3439dc;background:#eff0fe}
 .content{max-width:100%;padding:14px 12px calc(84px + env(safe-area-inset-bottom))}
 .toast{bottom:calc(76px + env(safe-area-inset-bottom))}

 /* 머리글 간단히 */
 .header{margin-bottom:14px}
 .crumb,.header p,.headerActions{display:none}
 h1{font-size:22px;margin:0}
 h2{font-size:17px}
 .metrics{gap:8px;margin-bottom:14px}
 .metric{padding:12px}
 .metric b{font-size:22px;margin:6px 0 2px}
 .metric small{display:none}
 .surface{padding:14px;border-radius:14px;margin-bottom:12px}

 /* 손가락으로 누르기 좋은 크기 · iOS 확대 방지(16px) */
 button,.buttonLink{min-height:44px}
 button.small,.buttonLink.small,.mediaThumbBtn{min-height:38px}
 input,select,textarea{font-size:16px!important;min-height:46px}
 .sectionhead{gap:10px}
 .sectionhead>button,.sectionhead>.buttonLink{flex-shrink:0}

 /* 표 → 카드 */
 table.cardTable{min-width:0}
 table.cardTable thead{display:none}
 table.cardTable,table.cardTable tbody,table.cardTable tr,table.cardTable td{display:block;width:100%}
 table.cardTable tr{border:1px solid #e9ebf3;border-radius:12px;padding:8px 12px;margin-bottom:10px;background:#fff}
 table.cardTable td{border:0;padding:6px 0;max-width:none;display:flex;gap:12px;justify-content:space-between;align-items:flex-start;text-align:right;white-space:normal}
 table.cardTable td::before{content:attr(data-label);color:#8d96a6;font-size:12px;font-weight:700;text-align:left;flex-shrink:0;min-width:72px}
 table.cardTable td[data-label=""]::before,table.cardTable td.empty::before{display:none}
 table.cardTable td.empty{justify-content:center;text-align:center}
 table.cardTable td.comment{min-width:0;max-width:none}
 .tableWrap{overflow:visible}

 /* 게시물 목록 */
 .postScroll{max-height:none}
 .post{min-height:68px}
 .postThumb{width:48px;height:48px}
 .filters{grid-template-columns:1fr}
 .retryBar button{flex:1 1}
 .paginate{flex-direction:column;gap:10px;align-items:stretch}
 .paginate .flex button{flex:1 1}

 /* 새 게시물 */
 .publishBar{flex-direction:column;align-items:stretch}
 .publishWhen{flex-direction:column;align-items:stretch}
 .publishWhen .segmented{display:flex}
 .whenInput{width:100%;min-width:0}
 .publishButton{width:100%}
 .schedItem{padding:10px;gap:10px}
 .schedThumb{width:52px;height:64px}
 .thumbPreview{position:-webkit-sticky;position:sticky;top:58px;z-index:5;background:#fff;padding-bottom:8px}
 .thumbPreview canvas{max-height:46vh;width:auto;max-width:100%;margin:0 auto}
 .swatch{width:34px;height:34px}
}
.mediaRemove{width:32px;height:32px}
.mediaMove button{width:34px;height:34px}
@media(max-width:700px){
 .thumbPreview canvas{max-height:36vh}
 .mediaRemove{width:36px;height:36px}
 .mediaMove button{width:38px;height:38px}
}
@media(max-width:700px){.detail>.empty.large{display:none}}

/* 2026-11-05c: 썸네일 카드도 다른 카드와 높이·모양 맞추기 */
.mediaBadge{top:8px;bottom:auto;right:auto;left:40px;pointer-events:none}
.mediaItem:has(.mediaBadge){border-color:#3439dc;box-shadow:0 0 0 1px #3439dc inset}
.mediaThumbBtn{display:inline-flex;align-items:center;justify-content:center;gap:4px}
.mediaThumbBtn.again{color:#3439dc}
.mediaFoot{margin:8px;min-height:38px;display:flex;align-items:center;justify-content:center;gap:4px;font-size:12px;color:#6b7590}

/* 세로로 긴 사진이 카드 높이를 늘리지 않게 */
.mediaThumb{overflow:hidden}
.mediaThumb img,.mediaThumb video{position:absolute;inset:0}

/* AI 혼잡·한도 안내 */
.aiNote{display:flex;gap:10px;align-items:flex-start;border-radius:12px;padding:12px 12px 12px 14px;margin:4px 0 10px;border:1px solid}
.aiNote>.icon{flex:none;margin-top:2px}
.aiNote>div{flex:1 1;min-width:0}
.aiNote strong{display:block;font-size:14px;margin-bottom:2px}
.aiNote p{margin:2px 0;font-size:13px;line-height:1.5;word-break:keep-all;overflow-wrap:anywhere}
.aiNote.busy,.aiNote.quota{background:#fff8e6;border-color:#f3d48a;color:#7a5200}
.aiNote.error{background:#fdecee;border-color:#f3b8c0;color:#9b1c2e}
.aiNote .iconBtn{flex:none;width:32px;height:32px;min-height:0;padding:0;border-radius:50%;background:transparent;border:0;color:inherit;display:grid;place-items:center}
.aiNote .iconBtn:hover{background:#0000000f}
.aiNote p{color:inherit}.aiNote p.muted{opacity:.75}

/* 2026-11-05d: 카드 아래 버튼 모양 통일 + 쓸 수 없는 화살표 숨김 */
.mediaThumbBtn{display:flex;width:calc(100% - 16px);margin:8px;font-weight:700;color:#202b3e}
.mediaThumbBtn .icon{flex:none;margin:0}
.mediaMove button:disabled{visibility:hidden}

/* 2026-11-05e: 드래그로 순서 바꾸기 */
.mediaThumb.sortable{cursor:-webkit-grab;cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-touch-callout:none}
.mediaThumb.sortable img{-webkit-user-drag:none;pointer-events:none}
.mediaGrid.sorting,.mediaGrid.sorting *{cursor:-webkit-grabbing;cursor:grabbing}
.mediaGrid.sorting .mediaItem{transition:transform .12s ease}
.mediaItem.dragging{border:2px dashed #3439dc;background:#f3f4ff;box-shadow:none}
.mediaItem.dragging>*{opacity:.25}
.dragGhost{position:fixed;z-index:1000;width:110px;aspect-ratio:4/5;transform:translate(-50%,-60%) rotate(-3deg);border-radius:12px;overflow:hidden;box-shadow:0 14px 34px #0f173a59;pointer-events:none;border:2px solid #fff}
.dragGhost img,.dragGhost video{width:100%;height:100%;object-fit:cover;display:block}
.sortHint{display:flex;align-items:center;gap:5px;margin:4px 0 0}
body:has(.dragGhost){-webkit-user-select:none;-moz-user-select:none;user-select:none}

/* 2026-11-05f: 팔로우 확인(매니챗 방식) */
.tag.blue{background:#eef0ff;color:#3439dc;display:inline-flex;align-items:center;gap:4px}
.gateToggle{align-items:flex-start;background:#f5f6ff;border:1px solid #e0e3ff;border-radius:12px;padding:12px 14px}
.gateToggle input{margin-top:3px;flex:none}
.gateToggle small{display:block;margin-top:2px;font-weight:400}
.gateBox{border-left:3px solid #3439dc;padding:4px 0 2px 14px;margin:0 0 14px}
.flowMini .tag{margin-top:10px}
.flowMini .ruleMessage{margin:10px 0}
.ruleMessage small{display:block;font-size:11px;font-weight:800;color:#3439dc;margin-bottom:2px}
.qr,.linkBtn{display:inline-flex;align-items:center;border-radius:20px;font-size:12px;font-weight:700;line-height:1.3;padding:6px 12px;margin-top:8px}
.ruleMessage .qr,.ruleMessage .linkBtn{display:flex;width:max-content;max-width:100%}
.qr{border:1px solid #3439dc;color:#3439dc;background:#fff}
.linkBtn{background:#fff;border:1px solid #dce2eb;color:#202b3e}
.chatPreview{background:#f7f8fc;border:1px solid #eceff5;border-radius:14px;padding:14px;margin:4px 0 14px;display:flex;flex-direction:column;gap:6px}
.chatPreview .bubble{max-width:82%;white-space:pre-wrap;font-size:13px;line-height:1.5;padding:9px 13px;border-radius:18px;overflow-wrap:anywhere}
.chatPreview .bubble.me{align-self:flex-start;background:#fff;border:1px solid #e3e7ef;color:#202b3e}
.chatPreview .bubble.them{align-self:flex-end;background:#3439dc;color:#fff}
.chatPreview .bubble .linkBtn{display:flex;justify-content:center;margin-top:10px}
.chatPreview .qrRow{display:flex;justify-content:flex-end}
.chatPreview .qrRow .qr{margin:0}
.chatPreview .sysNote{align-self:center;font-size:11px;color:#148654;font-weight:700;background:#e7f8ef;border-radius:20px;padding:3px 10px}

