/* Approved 1672x941 reference: calibrated original-image geometry, scoped only. */
.dialog-overlay.template-sync-overlay { background:rgba(52,70,96,.36);backdrop-filter:blur(7px);padding:24px; }
.confirm-dialog.template-sync-dialog { --ts-heading:#10294f;--ts-body:#526a8d;--ts-card:#f8fafe;--ts-card-border:#d7e5fa;--ts-before:#f2f4f9;--ts-after:#edf4fd;--ts-after-border:#8cb4ff;--ts-rule:#e2eaf5;--ts-accent:#245bc0;position:relative;display:flex;flex-direction:column;width:min(1196px,calc(100vw - 48px));height:min(684px,calc(100dvh - 48px));max-height:calc(100dvh - 48px);padding:0;overflow:hidden;border:0;border-radius:22px;background:#fff;color:var(--ts-heading);box-shadow:0 30px 85px rgba(20,38,65,.22),0 0 0 1px rgba(255,255,255,.5);transform:translateY(4.5px);font-synthesis:weight style;font-family:Inter,"Noto Sans KR","Malgun Gothic",sans-serif;text-align:left; }
.template-sync-dialog .template-sync-header { flex:none;padding:61px 54px 0; }
.template-sync-dialog h2 { width:fit-content;max-width:calc(100% - 80px);margin:0;color:var(--ts-heading);font-size:47px;font-weight:750;line-height:54px;letter-spacing:-.8px;overflow-wrap:anywhere; }
.template-sync-dialog .template-sync-description { width:fit-content;max-width:100%;margin:24px 0 0;color:var(--ts-body);font-size:30px;line-height:44px;letter-spacing:-.5px; }
.template-sync-dialog .template-sync-close { position:absolute;right:34px;top:30px;display:grid;place-items:center;width:61px;height:60px;min-width:0;min-height:0;padding:0;border:0;border-radius:50%;background:#eef2f7;color:#52647e;box-shadow:none; }
.template-sync-dialog .template-sync-close svg { width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:2.7;stroke-linecap:round; }
.template-sync-dialog .template-sync-content { flex:1;display:flex;flex-direction:column;min-height:0;margin-top:36px;padding:0 50px 0 54px; }
.template-sync-dialog .template-sync-protection,.template-sync-dialog .template-sync-message { flex:none;margin:0 0 14px;padding:12px 16px;border-radius:10px;font-size:16px;line-height:1.55;overflow-wrap:anywhere; }
.template-sync-dialog .template-sync-protection { color:var(--ts-body);background:var(--ts-before); }
.template-sync-dialog .template-sync-message { color:#8c321f;background:#fff0e7; }
.template-sync-dialog .template-sync-protection:empty,.template-sync-dialog .template-sync-message:empty { display:none; }
.template-sync-dialog .template-sync-changes { flex:1;min-height:0;margin:0;padding:0 0 12px;list-style:none;overflow-y:auto;overscroll-behavior:contain; }
.template-sync-dialog .template-sync-card { min-height:282px;margin:0 0 20px;padding:23px 34px 29px;list-style:none;border:1px solid var(--ts-card-border);border-radius:19px;background:linear-gradient(110deg,var(--ts-card),#fbfcff); }
.template-sync-dialog .template-sync-card:last-child { margin-bottom:0; }
.template-sync-dialog .template-sync-card-header { display:grid;grid-template-columns:68px minmax(0,1fr) 123px;align-items:center;column-gap:28px;min-height:68px; }
.template-sync-dialog .template-sync-card-icon { display:grid;place-items:center;width:68px;height:68px;border-radius:50%;background:#d6e5ff;color:#2563dc; }
.template-sync-dialog .template-sync-card-icon svg { width:31px;height:36px;fill:none;stroke:currentColor;stroke-width:2.5;stroke-linejoin:round;stroke-linecap:round; }
.template-sync-dialog h3 { width:fit-content;margin:0;color:var(--ts-heading);font-size:30px;font-weight:750;line-height:48px;letter-spacing:-.8px;overflow-wrap:anywhere; }
.template-sync-dialog .template-sync-count { display:grid;place-items:center;width:123px;min-height:51px;border-radius:28px;background:#e0ebff;color:#2563cb;font-size:24px;line-height:31px;font-weight:750;white-space:nowrap; }
.template-sync-dialog .template-sync-card-rule { height:1px;margin:16px 0 20px;background:var(--ts-rule); }
.template-sync-dialog .template-sync-comparison { display:grid;grid-template-columns:minmax(0,451fr) minmax(46px,132fr) minmax(0,439fr);align-items:stretch; }
.template-sync-dialog .template-sync-side { display:flex;flex-direction:column;gap:8px;min-width:0; }
.template-sync-dialog .template-sync-label { width:fit-content;min-height:31px;color:#6b7f9e;font-size:24px;font-weight:700;line-height:31px; }
.template-sync-dialog .template-sync-after .template-sync-label { color:#306bce; }
.template-sync-dialog .template-sync-value { flex:1;display:flex;align-items:center;min-width:0;min-height:84px;padding:14px 28px;border:2px solid #e1e7f0;border-radius:13px;background:var(--ts-before);color:var(--ts-heading);font-size:30px;line-height:40px;letter-spacing:-.65px;overflow-wrap:anywhere;word-break:normal; }
.template-sync-dialog .template-sync-after .template-sync-value { border-color:var(--ts-after-border);background:var(--ts-after);color:#2055b2;font-weight:750; }
.template-sync-dialog .template-sync-arrow { display:flex;align-items:center;justify-content:center;min-width:0;padding-top:39px;color:#607594; }
.template-sync-dialog .template-sync-arrow svg { width:46px;height:35px;fill:none;stroke:currentColor;stroke-width:3;stroke-linecap:round;stroke-linejoin:round; }
.template-sync-dialog .template-sync-footer { flex:none;padding:0 40px 31px 54px; }
.template-sync-dialog .template-sync-footer-rule { height:1px;margin-right:10px;background:var(--ts-rule); }
.template-sync-dialog .template-sync-actions { display:flex;justify-content:flex-end;gap:13px;padding:27px 0 0;margin:0; }
.template-sync-dialog .template-sync-actions button { display:grid;place-items:center;min-height:81px;padding:12px 20px;border:2px solid #bac7dc;border-radius:13px;background:#fff;color:#6c7f9d;font-size:28px;line-height:36px;font-weight:750;white-space:normal;box-shadow:none; }
.template-sync-dialog .template-sync-actions .template-sync-later { width:181px; }
.template-sync-dialog .template-sync-actions .template-sync-apply { width:232px;border-color:#3166cb;background:linear-gradient(110deg,#326bd4,#3565c4);color:#fff; }
.template-sync-dialog .template-sync-actions .template-sync-keep { min-width:160px; }
.template-sync-dialog button:disabled { opacity:.46;cursor:not-allowed; }
.template-sync-dialog button:focus-visible { outline:3px solid #2267db;outline-offset:4px; }
.template-sync-dialog .template-sync-summary { position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0; }
.template-sync-dialog .template-sync-order-note { margin:12px 0 0;color:var(--ts-body);font-size:16px;line-height:1.5; }
:root[data-theme="dark"] .template-sync-dialog { --ts-heading:#e8f0ff;--ts-body:#b8c8e1;--ts-card:#18283e;--ts-card-border:#365270;--ts-before:#23334b;--ts-after:#1d3557;--ts-after-border:#719ee4;--ts-rule:#344c69;background:#101d2f;color:var(--ts-heading); }
:root[data-theme="dark"] .template-sync-dialog .template-sync-card { background:var(--ts-card); }
:root[data-theme="dark"] .template-sync-dialog .template-sync-after .template-sync-value { color:#b7d2ff; }
:root[data-theme="dark"] .template-sync-dialog .template-sync-later,:root[data-theme="dark"] .template-sync-dialog .template-sync-keep { background:var(--ts-before);color:var(--ts-heading); }
:root[data-theme="dark"] .template-sync-dialog .template-sync-message { background:#472b24;color:#ffd0bd; }
@media(max-width:1250px),(max-height:800px) {
 .confirm-dialog.template-sync-dialog { width:min(1196px,calc(100vw - 40px));height:min(684px,calc(100dvh - 40px));max-height:calc(100dvh - 40px);transform:none; }
 .template-sync-dialog .template-sync-header { padding:36px 36px 0; }
 .template-sync-dialog h2 { font-size:34px;line-height:46px; }
 .template-sync-dialog .template-sync-description { margin-top:18px;font-size:23px;line-height:34px; }
 .template-sync-dialog .template-sync-content { margin-top:24px;padding:0 36px; }
 .template-sync-dialog .template-sync-footer { padding:0 36px 24px; }
 .template-sync-dialog .template-sync-actions { padding-top:20px; }
 .template-sync-dialog .template-sync-actions button { min-height:64px;font-size:22px;line-height:30px; }
 .template-sync-dialog .template-sync-close { right:22px;top:24px;width:48px;height:48px; }
 .template-sync-dialog .template-sync-card { padding:20px 24px 24px;min-height:250px; }
 .template-sync-dialog h3 { font-size:25px;line-height:36px; }
 .template-sync-dialog .template-sync-value { padding:14px 20px;font-size:24px;line-height:34px; }
}
@media(max-width:820px) {
 .dialog-overlay.template-sync-overlay { padding:12px; }
 .confirm-dialog.template-sync-dialog { width:calc(100vw - 24px);height:min(840px,calc(100dvh - 24px));max-height:calc(100dvh - 24px);border-radius:18px; }
 .template-sync-dialog .template-sync-header { padding:30px 24px 0; }
 .template-sync-dialog h2 { max-width:calc(100% - 45px);font-size:28px;line-height:38px;letter-spacing:-.7px; }
 .template-sync-dialog .template-sync-description { margin-top:14px;font-size:18px;line-height:28px; }
 .template-sync-dialog .template-sync-close { top:18px;right:16px;width:42px;height:42px; }
 .template-sync-dialog .template-sync-content { padding:0 24px;margin-top:20px; }
 .template-sync-dialog .template-sync-card { padding:20px; }
 .template-sync-dialog .template-sync-card-header { grid-template-columns:48px minmax(0,1fr);gap:12px;min-height:48px; }
 .template-sync-dialog .template-sync-card-icon { width:48px;height:48px; }
 .template-sync-dialog .template-sync-card-icon svg { width:24px;height:29px; }
 .template-sync-dialog h3 { font-size:21px;line-height:30px;letter-spacing:-.6px; }
 .template-sync-dialog .template-sync-count { grid-column:2;width:102px;min-height:36px;font-size:18px;line-height:26px; }
 .template-sync-dialog .template-sync-comparison { grid-template-columns:minmax(0,1fr);gap:12px; }
 .template-sync-dialog .template-sync-label { width:fit-content;min-height:28px;font-size:19px;line-height:28px; }
 .template-sync-dialog .template-sync-value { min-height:68px;font-size:20px;line-height:30px;padding:14px 16px; }
 .template-sync-dialog .template-sync-arrow { padding:0;min-height:32px; }
 .template-sync-dialog .template-sync-arrow svg { transform:rotate(90deg);width:36px;height:28px; }
 .template-sync-dialog .template-sync-footer { padding:0 24px 20px; }
 .template-sync-dialog .template-sync-actions { gap:10px;flex-wrap:wrap;padding-top:18px; }
 .template-sync-dialog .template-sync-actions button { min-height:54px;min-width:0;font-size:19px;line-height:28px;padding:10px 14px; }
 .template-sync-dialog .template-sync-actions .template-sync-later { width:110px; }
 .template-sync-dialog .template-sync-actions .template-sync-apply { width:190px; }
 .template-sync-dialog .template-sync-actions .template-sync-keep { width:120px; }
}
@media(max-width:450px) {
 .template-sync-dialog .template-sync-header { padding:24px 18px 0; }
 .template-sync-dialog h2 { font-size:25px;line-height:35px; }
 .template-sync-dialog .template-sync-description { font-size:16px;line-height:25px; }
 .template-sync-dialog .template-sync-content { padding:0 18px; }
 .template-sync-dialog .template-sync-card { padding:16px; }
 .template-sync-dialog .template-sync-footer { padding:0 18px 16px; }
 .template-sync-dialog .template-sync-actions { gap:8px; }
 .template-sync-dialog .template-sync-actions .template-sync-later { width:95px; }
 .template-sync-dialog .template-sync-actions .template-sync-apply { flex:1;width:auto;font-size:17px; }
}
