@import"https://fonts.googleapis.com/css2?family=Gowun+Batang:wght@400;700&display=swap";@import"https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/static/pretendard.min.css";@import"https://cdn.jsdelivr.net/gh/moonspam/NanumSquare@2.0/nanumsquare.css";:root{--font-primary: "Gowun Batang", "Times New Roman", serif;--font-secondary: "Gowun Batang", "Times New Roman", serif;--font-accent: "Gowun Batang", "Times New Roman", serif;--font-primary-modern: "Gowun Batang", "Times New Roman", serif;--font-secondary-modern: "Gowun Batang", "Times New Roman", serif;--font-accent-modern: "Gowun Batang", "Times New Roman", serif;--font-primary-romantic: "Gowun Batang", "Times New Roman", serif;--font-secondary-romantic: "Gowun Batang", "Times New Roman", serif;--font-accent-romantic: "Gowun Batang", "Times New Roman", serif;--current-primary: var(--font-primary);--current-secondary: var(--font-secondary);--current-accent: var(--font-accent)}.font-theme-classic{--current-primary: var(--font-primary);--current-secondary: var(--font-secondary);--current-accent: var(--font-accent)}.font-theme-modern{--current-primary: var(--font-primary-modern);--current-secondary: var(--font-secondary-modern);--current-accent: var(--font-accent-modern)}.font-theme-romantic{--current-primary: var(--font-primary-romantic);--current-secondary: var(--font-secondary-romantic);--current-accent: var(--font-accent-romantic)}.font-primary{font-family:var(--current-primary)}.font-secondary{font-family:var(--current-secondary)}.font-accent{font-family:var(--current-accent)}html,body{overflow-x:hidden;max-width:100vw;max-height:100vh;touch-action:pan-x pan-y;-webkit-touch-callout:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}*{-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}@media screen and (max-width: 768px){html{-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;text-size-adjust:100%}}:root{--primary-color: #c9736b;--primary-hover: #b8635b;--primary-light: rgba(201, 115, 107, .08);--primary-lighter: rgba(201, 115, 107, .05);--primary-bg: rgba(201, 115, 107, .02);--primary-border: rgba(201, 115, 107, .15);--primary-text: #c9736b;--secondary-text: #000000;--accent-color: #d4a5a5;--primary-red: #c9736b;--background-color: #f9f1ee;--font-size-h1: 22px;--font-size-h2: 20px;--font-size-h3: 20px;--font-size-subTitle: 16px;--font-size-body: 15px;--font-size-small: 13px;--font-size-button: 15px;--font-size-caption: 13px;--font-size-hero-title: 18px;--font-size-hero-subtitle: 14px;--font-size-card-title: 20px;--font-size-card-subtitle: 17px;--font-size-calendar-month: 18px;--font-size-calendar-day: 15px;--font-size-venue-name: 19px;--font-size-venue-info: 15px}*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none}body{font-family:var(--current-secondary);line-height:1.6;color:var(--primary-text);background-color:var(--primary-bg)}#wrap{max-width:430px;margin:0 auto;background-color:#f2f3f7ee}.admin-login-container{display:flex;justify-content:center;align-items:center;min-height:100vh;background:#f0f2f5;padding:20px;font-family:Pretendard,-apple-system,BlinkMacSystemFont,system-ui,Roboto,Helvetica Neue,Segoe UI,Apple SD Gothic Neo,Noto Sans KR,Malgun Gothic,sans-serif}.admin-login-box{background:#fff;padding:40px;border-radius:12px;box-shadow:0 10px 40px #0003;width:100%;max-width:400px}.admin-login-box h1{margin:0 0 30px;font-size:28px;color:#333;text-align:center}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;font-size:14px;font-weight:600;color:#555}.form-group input{width:100%;padding:12px 16px;font-size:16px;border:2px solid #e0e0e0;border-radius:8px;transition:border-color .3s;box-sizing:border-box}.form-group input:focus{outline:none;border-color:#3498db}.form-group input:disabled{background-color:#f5f5f5;cursor:not-allowed}.error-message{background-color:#fee;color:#c33;padding:12px;border-radius:6px;margin-bottom:20px;font-size:14px;text-align:center}.admin-login-box button[type=submit]{width:100%;padding:14px;font-size:16px;font-weight:600;color:#fff;background:#3498db;border:none;border-radius:8px;cursor:pointer;transition:transform .2s,box-shadow .2s,background .2s}.admin-login-box button[type=submit]:hover:not(:disabled){background:#2980b9;transform:translateY(-2px);box-shadow:0 6px 20px #3498db66}.admin-login-box button[type=submit]:disabled{opacity:.6;cursor:not-allowed}.admin-layout,.admin-layout *{font-family:Pretendard,-apple-system,BlinkMacSystemFont,system-ui,Roboto,Helvetica Neue,Segoe UI,Apple SD Gothic Neo,Noto Sans KR,Malgun Gothic,sans-serif!important;user-select:text!important;-webkit-user-select:text!important;-moz-user-select:text!important;-ms-user-select:text!important}.admin-sidebar{width:250px;background:#2c3e50;color:#fff;transition:width .3s;position:fixed;height:100vh;overflow-y:auto;z-index:1000}.admin-sidebar.closed{width:60px}.sidebar-header{padding:20px;border-bottom:1px solid rgba(255,255,255,.1);display:flex;justify-content:space-between;align-items:center}.sidebar-header h2{margin:0;font-size:20px}.sidebar-toggle{background:none;border:none;color:#fff;font-size:18px;cursor:pointer;padding:5px}.sidebar-nav{padding:20px 0}.nav-item{display:block;padding:12px 20px;color:#ecf0f1;text-decoration:none;transition:all .3s;border-left:3px solid transparent}.nav-item:hover{background:#ffffff1a;border-left-color:#3498db}.nav-item.active{background:#3498db33;border-left-color:#3498db;color:#fff}.admin-main{flex:1;margin-left:250px;transition:margin-left .3s;display:flex;flex-direction:column}.admin-sidebar.closed~.admin-main{margin-left:60px}.admin-header{background:#fff;padding:15px 30px;box-shadow:0 2px 4px #0000001a;display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;z-index:100}.header-left h1{margin:0;font-size:22px;color:#2c3e50}.header-right{display:flex;align-items:center;gap:15px}.session-info{display:flex;align-items:center;gap:8px;padding:8px 12px;background:#f5f5f5;border-radius:6px;border:1px solid #e0e0e0;font-size:15px!important}.session-info *{font-size:15px!important;font-family:inherit!important}.session-label{color:#666;font-weight:500}.session-time{font-family:inherit!important;font-weight:700;color:#333}.session-time.warning{color:#f44336;animation:blink 1s infinite}@keyframes blink{0%,50%,to{opacity:1}25%,75%{opacity:.5}}.extend-btn{padding:6px 12px;background:#4caf50;color:#fff;border:none;border-radius:4px;font-size:15px!important;font-weight:600;cursor:pointer;transition:background .3s}.extend-btn:hover{background:#45a049}.logout-btn{padding:8px 16px;background:#f44336;color:#fff;border:none;border-radius:4px;font-size:14px;font-weight:600;cursor:pointer;transition:background .3s}.logout-btn:hover{background:#d32f2f}.admin-content{flex:1;padding:30px}@media (max-width: 768px){.admin-sidebar{width:60px}.admin-sidebar.open{width:250px}.admin-main{margin-left:60px}.admin-sidebar.open~.admin-main{margin-left:250px}.admin-header{flex-direction:column;gap:15px;align-items:flex-start}.header-right{width:100%;flex-wrap:wrap}.session-info{flex:1;justify-content:space-between}}.dashboard-page{font-family:Pretendard,-apple-system,BlinkMacSystemFont,system-ui,Roboto,Helvetica Neue,Segoe UI,Apple SD Gothic Neo,Noto Sans KR,Malgun Gothic,sans-serif}.stats-container{display:grid;grid-template-columns:repeat(6,1fr);gap:20px;margin-bottom:30px}.stat-card{background:#fff;padding:24px;border-radius:12px;box-shadow:0 2px 8px #0000001a;transition:transform .2s,box-shadow .2s}.stat-card:hover{transform:translateY(-4px);box-shadow:0 6px 16px #00000026}.stat-content{width:100%}.stat-label{font-size:14px;color:#666;margin-bottom:6px;font-weight:500}.stat-value{font-size:32px;font-weight:700;color:#333;line-height:1}.dashboard-content{display:grid;gap:20px}.info-box{background:#fff;padding:30px;border-radius:12px;box-shadow:0 2px 8px #0000001a}.info-box h2{margin:0 0 16px;font-size:22px;color:#333}.info-box p{margin:0 0 16px;color:#666;line-height:1.6}.info-box ul{margin:0;padding-left:20px;color:#555}.info-box ul li{margin-bottom:8px;line-height:1.6}.analytics-section{background:#fff;padding:30px;border-radius:12px;box-shadow:0 2px 8px #0000001a}.analytics-section h2{margin:0 0 25px;font-size:22px;color:#333;padding-bottom:15px;border-bottom:2px solid #f0f0f0}.analytics-section h3{margin:30px 0 15px;font-size:18px;color:#333;font-weight:600}.analytics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:30px}.analytics-card{background:#f8f9fa;padding:20px;border-radius:10px;border:1px solid #dee2e6;text-align:center;transition:transform .2s,box-shadow .2s}.analytics-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.analytics-label{font-size:13px;color:#666;margin-bottom:8px;font-weight:500}.analytics-value{font-size:28px;font-weight:700;line-height:1;color:#3498db}.chart-section{background:#f8f9fa;padding:20px;border-radius:10px;margin-bottom:20px}.chart-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.chart-header h3{margin:0;font-size:18px;color:#333;font-weight:600}.chart-tabs{display:flex;gap:8px;background:#fff;padding:4px;border-radius:8px;box-shadow:0 1px 3px #0000001a}.chart-tab{padding:8px 16px;background:transparent;border:none;border-radius:6px;font-size:14px;font-weight:600;color:#666;cursor:pointer;transition:all .2s}.chart-tab:hover{background:#f8f9fa;color:#3498db}.chart-tab.active{background:#3498db;color:#fff}.hourly-chart{display:flex;justify-content:space-around;align-items:flex-end;height:200px;padding:20px 10px 40px;gap:8px}.hour-bar{flex:1;display:flex;flex-direction:column;align-items:center;position:relative;height:100%}.hour-fill{width:100%;background:#3498db;border-radius:4px 4px 0 0;transition:all .3s ease;min-height:5%;margin-top:auto}.hour-bar:hover .hour-fill{background:#2980b9}.hour-label{position:absolute;bottom:-25px;font-size:11px;color:#666;font-weight:500;white-space:nowrap}.hour-count{position:absolute;top:-20px;font-size:11px;color:#333;font-weight:600}.daily-chart{display:flex;justify-content:space-around;align-items:flex-end;height:200px;padding:20px 10px 40px;gap:4px;overflow-x:auto}.day-bar{flex:1;min-width:20px;max-width:40px;display:flex;flex-direction:column;align-items:center;position:relative;height:100%}.day-fill{width:100%;background:#3498db;border-radius:4px 4px 0 0;transition:all .3s ease;min-height:5%;margin-top:auto}.day-bar:hover .day-fill{background:#2980b9}.day-label{position:absolute;bottom:-25px;font-size:10px;color:#666;font-weight:500;white-space:nowrap;transform:rotate(-45deg);transform-origin:top left}.day-count{position:absolute;top:-20px;font-size:11px;color:#333;font-weight:600}.referers-section{background:#f8f9fa;padding:20px;border-radius:10px;margin-bottom:20px}.referers-list{display:flex;flex-direction:column;gap:12px}.referer-item{display:flex;align-items:center;padding:15px;background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000000d;transition:all .2s}.referer-item:hover{transform:translate(5px);box-shadow:0 2px 6px #0000001a}.referer-rank{font-size:16px;font-weight:700;color:#3498db;min-width:40px}.referer-name{flex:1;font-size:14px;color:#333;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.referer-count{font-size:14px;font-weight:600;color:#666;min-width:60px;text-align:right}.recent-logs-section{margin-top:30px}.logs-table{overflow-x:auto;background:#fff;border-radius:8px;border:1px solid #e9ecef}.logs-table table{width:100%;border-collapse:collapse;font-size:13px}.logs-table thead{background:#f8f9fa}.logs-table th{padding:12px;text-align:left;font-weight:600;color:#495057;border-bottom:2px solid #dee2e6;white-space:nowrap}.logs-table td{padding:12px;border-bottom:1px solid #e9ecef;color:#212529}.logs-table tbody tr:hover{background:#f8f9fa}.device-badge{display:inline-block;padding:4px 10px;border-radius:12px;font-size:12px;font-weight:600}.device-badge.mobile{background:#d4edda;color:#155724}.device-badge.desktop{background:#d1ecf1;color:#0c5460}.device-badge.tablet{background:#fff3cd;color:#856404}.ip-address{font-family:Courier New,monospace;font-size:12px;color:#6c757d}.pagination{display:flex;justify-content:center;align-items:center;gap:8px;margin-top:25px;padding-top:20px;border-top:1px solid #e9ecef}.pagination-btn{background:#fff;border:1px solid #dee2e6;width:36px;height:36px;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;padding:0;color:#495057}.pagination-btn:hover:not(:disabled){background:#e7f3ff;border-color:#3498db;color:#3498db}.pagination-btn.active{background:#3498db;color:#fff;border-color:#3498db}.pagination-btn:disabled{opacity:.4;cursor:not-allowed}.pagination-arrow{font-size:20px;font-weight:400}.pagination-number{min-width:36px;width:auto;padding:0 8px}.pagination-ellipsis{color:#6c757d;padding:0 4px}@media (max-width: 768px){.stats-container,.analytics-grid{grid-template-columns:1fr}.hourly-chart{height:150px;padding:10px 5px 30px;gap:4px}.hour-label,.hour-count{font-size:9px}.logs-table{font-size:11px}.logs-table th,.logs-table td{padding:8px}}.invitation-list-page{background:#fff;border-radius:8px;padding:30px;box-shadow:0 2px 4px #0000001a;font-family:Pretendard,-apple-system,BlinkMacSystemFont,system-ui,Roboto,Helvetica Neue,Segoe UI,Apple SD Gothic Neo,Noto Sans KR,Malgun Gothic,sans-serif}.page-actions{display:flex;gap:10px}.search-input{padding:10px 16px;border:1px solid #ddd;border-radius:6px;font-size:14px;width:300px;transition:border-color .3s}.search-input:focus{outline:none;border-color:#3498db}.table-container{overflow-x:auto;margin-bottom:20px}.data-table{width:100%;border-collapse:collapse;font-size:14px}.data-table thead{background:#f8f9fa}.data-table th{padding:12px;text-align:left;font-weight:600;color:#495057;border-bottom:2px solid #dee2e6;white-space:nowrap}.data-table td{padding:12px;border-bottom:1px solid #dee2e6;color:#212529}.data-table tbody tr.clickable-row{cursor:pointer;transition:background-color .2s}.data-table tbody tr.clickable-row:hover{background-color:#f8f9fa}.no-data{text-align:center;padding:40px 20px;color:#999}.wedding-code{font-family:inherit}.badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600}.badge.published{background:#d4edda;color:#155724}.badge.unpublished{background:#f8d7da;color:#721c24}.table-footer{display:flex;justify-content:space-between;align-items:center;margin-top:20px;padding-top:20px;border-top:1px solid #e9ecef;flex-wrap:wrap;gap:20px}.table-info{color:#666;font-size:14px}.invitation-list-page .pagination{display:flex;justify-content:center;align-items:center;gap:8px;margin-top:25px;padding-top:20px;border-top:1px solid #e9ecef}.invitation-list-page .pagination-btn{background:#fff;border:1px solid #dee2e6;width:36px;height:36px;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;padding:0;color:#495057}.invitation-list-page .pagination-btn:hover:not(:disabled){background:#e7f3ff;border-color:#3498db;color:#3498db}.invitation-list-page .pagination-btn.active{background:#3498db;color:#fff;border-color:#3498db}.invitation-list-page .pagination-btn:disabled{opacity:.4;cursor:not-allowed}.invitation-list-page .pagination-arrow{font-size:20px;font-weight:400}.invitation-list-page .pagination-number{min-width:36px;width:auto;padding:0 8px}@media (max-width: 768px){.page-header{flex-direction:column;align-items:flex-start;gap:15px}.search-input{width:100%}.data-table{font-size:12px}.data-table th,.data-table td{padding:8px}}.invitation-detail-page{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;font-family:Pretendard,-apple-system,BlinkMacSystemFont,system-ui,Roboto,Helvetica Neue,Segoe UI,Apple SD Gothic Neo,Noto Sans KR,Malgun Gothic,sans-serif}.invitation-detail-page .page-header{display:flex;justify-content:space-between;align-items:center;padding:25px 30px;border-bottom:2px solid #f0f0f0}.invitation-detail-page .header-left{display:flex;align-items:center;gap:15px}.invitation-detail-page .header-left h2{margin:0;font-size:24px;color:#2c3e50}.invitation-detail-page .back-btn{padding:8px 16px;background:#f8f9fa;border:1px solid #dee2e6;border-radius:6px;cursor:pointer;transition:all .3s;font-size:14px}.invitation-detail-page .back-btn:hover{background:#e9ecef}.invitation-detail-page .header-right{display:flex;gap:10px}.invitation-detail-page .edit-btn,.invitation-detail-page .add-btn,.invitation-detail-page .save-btn,.invitation-detail-page .cancel-btn{padding:10px 20px;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:background .3s,transform .3s}.invitation-detail-page .edit-btn{background:#3498db;color:#fff}.invitation-detail-page .edit-btn:hover{background:#2980b9}.invitation-detail-page .add-btn{background:#27ae60;color:#fff}.invitation-detail-page .add-btn:hover{background:#229954}.invitation-detail-page .save-btn{background:#27ae60;color:#fff}.invitation-detail-page .save-btn:hover{background:#229954}.invitation-detail-page .cancel-btn{background:#95a5a6;color:#fff}.invitation-detail-page .cancel-btn:hover{background:#7f8c8d}.invitation-detail-page .tab-container{padding:30px}.invitation-detail-page .tabs{display:flex;gap:5px;border-bottom:2px solid #e9ecef;margin-bottom:30px;flex-wrap:wrap}.invitation-detail-page .tab{padding:12px 20px;background:none;border:none;border-bottom:3px solid transparent;cursor:pointer;font-size:14px;font-weight:500;color:#6c757d;transition:all .3s;position:relative;bottom:-2px}.invitation-detail-page .tab:hover{color:#3498db}.invitation-detail-page .tab.active{color:#3498db;border-bottom-color:#3498db;font-weight:600}.invitation-detail-page .tab-content{min-height:400px}.invitation-detail-page .section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px;padding-bottom:15px;border-bottom:1px solid #e9ecef}.invitation-detail-page .section-header h3{margin:0;font-size:20px;color:#2c3e50}.invitation-detail-page .section-actions{display:flex;gap:10px}.invitation-detail-page .content-section h3{margin:0 0 25px;font-size:20px;color:#2c3e50;padding-bottom:15px;border-bottom:1px solid #e9ecef}.invitation-detail-page .info-message{background:#f0f7ff;color:#06c;padding:12px 16px;border-radius:6px;margin-bottom:20px;font-size:14px;border-left:3px solid #0066cc}.invitation-detail-page .form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px}.invitation-detail-page .form-group{display:flex;flex-direction:column;gap:8px}.invitation-detail-page .form-group label{font-size:14px;font-weight:600;color:#495057}.invitation-detail-page .form-input{padding:10px 12px;border:1px solid #ced4da;border-radius:6px;font-size:14px;transition:border-color .3s}.invitation-detail-page .form-input:focus{outline:none;border-color:#3498db}.invitation-detail-page .form-input:disabled{background:#f8f9fa;color:#6c757d;cursor:not-allowed}.invitation-detail-page .couple-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px}.invitation-detail-page .couple-card{padding:20px;border:1px solid #dee2e6;border-radius:8px;background:#f8f9fa}.invitation-detail-page .couple-card h4{margin:0 0 15px;font-size:18px;color:#2c3e50;padding-bottom:10px;border-bottom:2px solid #dee2e6}.invitation-detail-page .info-row{display:flex;margin-bottom:12px;font-size:14px}.invitation-detail-page .info-row .label{font-weight:600;color:#495057;min-width:150px}.invitation-detail-page .deceased{color:#6c757d;font-size:12px;margin-left:5px}.invitation-detail-page .info-grid .info-row{padding:12px;background:#f8f9fa;border-radius:6px;margin-bottom:10px}.invitation-detail-page .greeting-list{display:flex;flex-direction:column;gap:15px}.invitation-detail-page .greeting-item{padding:20px;border:1px solid #dee2e6;border-radius:8px;background:#f8f9fa}.invitation-detail-page .greeting-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid #dee2e6}.invitation-detail-page .greeting-title{font-weight:600;font-size:16px;color:#2c3e50}.invitation-detail-page .greeting-type{padding:4px 12px;background:#3498db;color:#fff;border-radius:12px;font-size:12px;font-weight:600}.invitation-detail-page .greeting-content{white-space:pre-wrap;line-height:1.8;color:#495057}.invitation-detail-page .gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:15px}.invitation-detail-page .gallery-item{border:1px solid #dee2e6;border-radius:8px;overflow:hidden;background:#f8f9fa}.invitation-detail-page .gallery-preview{height:150px;background:#e9ecef;display:flex;align-items:center;justify-content:center;color:#6c757d;font-size:14px}.invitation-detail-page .gallery-info{padding:10px;font-size:12px;color:#6c757d}.invitation-detail-page .gallery-status{margin-top:5px;font-weight:600}.invitation-detail-page .gallery-grid-enhanced{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:20px;margin-top:20px}.invitation-detail-page .gallery-item-enhanced{border:2px solid #dee2e6;border-radius:12px;overflow:hidden;background:#fff;transition:all .3s ease;cursor:move}.invitation-detail-page .gallery-item-enhanced:hover{transform:translateY(-5px);box-shadow:0 8px 16px #00000026;border-color:#3498db}.invitation-detail-page .gallery-item-enhanced.dragging{opacity:.5;transform:scale(.95)}.invitation-detail-page .gallery-image-wrapper{position:relative;width:100%;padding-top:100%;overflow:hidden;cursor:pointer;background:#f8f9fa}.invitation-detail-page .gallery-image{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.invitation-detail-page .gallery-image-wrapper:hover .gallery-image{transform:scale(1.05)}.invitation-detail-page .gallery-overlay{position:absolute;top:0;left:0;right:0;padding:10px;background:linear-gradient(to bottom,rgba(0,0,0,.6),transparent);display:flex;justify-content:space-between;align-items:flex-start}.invitation-detail-page .gallery-order{background:#3498db;color:#fff;padding:4px 10px;border-radius:12px;font-size:12px;font-weight:600}.invitation-detail-page .gallery-actions{display:flex;gap:8px;padding:12px;background:#f8f9fa;border-top:1px solid #dee2e6}.invitation-detail-page .gallery-btn{flex:1;padding:8px 12px;border:none;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;transition:all .3s}.invitation-detail-page .gallery-edit-btn{background:#3498db;color:#fff}.invitation-detail-page .gallery-edit-btn:hover{background:#2980b9}.invitation-detail-page .gallery-delete-btn{background:#e74c3c;color:#fff}.invitation-detail-page .gallery-delete-btn:hover{background:#c0392b}.invitation-detail-page .modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.invitation-detail-page .modal-content{background:#fff;border-radius:12px;width:90%;max-width:500px;max-height:90vh;overflow:auto;box-shadow:0 10px 40px #0000004d;animation:slideUp .3s ease}.invitation-detail-page .modal-content-large{max-width:800px}@keyframes slideUp{0%{transform:translateY(50px);opacity:0}to{transform:translateY(0);opacity:1}}.invitation-detail-page .modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 25px;border-bottom:1px solid #e9ecef}.invitation-detail-page .modal-header h3{margin:0;font-size:20px;color:#2c3e50}.invitation-detail-page .modal-close{background:none;border:none;font-size:32px;color:#6c757d;cursor:pointer;padding:0;width:32px;height:32px;line-height:1;transition:color .3s}.invitation-detail-page .modal-close:hover{color:#2c3e50}.invitation-detail-page .modal-body{padding:25px}.invitation-detail-page .modal-body-image{display:flex;justify-content:center;align-items:center;padding:20px;background:#f8f9fa}.invitation-detail-page .modal-full-image{max-width:100%;max-height:70vh;object-fit:contain;border-radius:8px}.invitation-detail-page .modal-footer{display:flex;justify-content:flex-end;gap:10px;padding:20px 25px;border-top:1px solid #e9ecef}.invitation-detail-page .modal-btn{padding:10px 20px;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s}.invitation-detail-page .modal-btn-primary{background:#3498db;color:#fff}.invitation-detail-page .modal-btn-primary:hover{background:#2980b9}.invitation-detail-page .modal-btn-secondary{background:#95a5a6;color:#fff}.invitation-detail-page .modal-btn-secondary:hover{background:#7f8c8d}.invitation-detail-page .account-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:15px}.invitation-detail-page .account-item{padding:15px;border:1px solid #dee2e6;border-radius:8px;background:#f8f9fa}.invitation-detail-page .account-type{font-size:12px;font-weight:600;color:#6c757d;margin-bottom:8px}.invitation-detail-page .account-details{font-size:14px}.invitation-detail-page .account-details div:first-child{font-weight:600;margin-bottom:4px}.invitation-detail-page .account-section{margin-bottom:40px;padding:20px;border:1px solid #e9ecef;border-radius:12px;background:#fafbfc}.invitation-detail-page .account-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:15px;border-bottom:2px solid #dee2e6}.invitation-detail-page .account-section-header h4{margin:0;font-size:18px;color:#2c3e50;font-weight:600}.invitation-detail-page .account-list-enhanced{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px}.invitation-detail-page .account-card{border:2px solid #dee2e6;border-radius:12px;background:#fff;overflow:hidden;transition:all .3s ease;cursor:move}.invitation-detail-page .account-card:hover{transform:translateY(-3px);box-shadow:0 6px 12px #0000001a;border-color:#3498db}.invitation-detail-page .account-card.dragging{opacity:.5;transform:scale(.95)}.invitation-detail-page .account-card-header{display:flex;justify-content:space-between;align-items:center;padding:12px 15px;background:#f8f9fa;border-bottom:2px solid #dee2e6}.invitation-detail-page .account-order{background:#3498db;color:#fff;padding:4px 10px;border-radius:12px;font-size:12px;font-weight:600}.invitation-detail-page .account-type-badge{background:#fff;color:#3498db;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;border:1px solid #3498db}.invitation-detail-page .account-card-body{padding:15px 15px 20px}.invitation-detail-page .account-role{font-size:11px;color:#6c757d;font-weight:600;text-transform:uppercase;margin-bottom:8px;letter-spacing:.5px}.invitation-detail-page .account-name{font-size:18px;font-weight:700;color:#2c3e50;margin-bottom:8px}.invitation-detail-page .account-bank{font-size:14px;color:#495057;font-weight:600;margin-bottom:4px}.invitation-detail-page .account-number{font-size:14px;color:#6c757d;font-family:Courier New,monospace;letter-spacing:.5px;line-height:1.6;padding-bottom:4px}.invitation-detail-page .account-card-actions{display:flex;gap:8px;padding:12px;background:#f8f9fa;border-top:1px solid #dee2e6}.invitation-detail-page .account-btn{flex:1;padding:8px 12px;border:none;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;transition:all .3s}.invitation-detail-page .account-edit-btn{background:#3498db;color:#fff}.invitation-detail-page .account-edit-btn:hover{background:#2980b9;transform:translateY(-1px)}.invitation-detail-page .account-delete-btn{background:#e74c3c;color:#fff}.invitation-detail-page .account-delete-btn:hover{background:#c0392b;transform:translateY(-1px)}.invitation-detail-page .no-data{text-align:center;padding:60px 20px;color:#6c757d;font-size:16px}.invitation-detail-page .loading{text-align:center;padding:100px 20px;font-size:18px;color:#666}.invitation-detail-page .error-message{text-align:center;padding:100px 20px;font-size:18px;color:#e74c3c}.invitation-detail-page .guestbook-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;flex-wrap:wrap;gap:15px}.invitation-detail-page .guestbook-search{flex:1;min-width:250px;max-width:400px}.invitation-detail-page .search-input{width:100%;padding:10px 12px;border:1px solid #ced4da;border-radius:6px;font-size:14px;transition:border-color .3s}.invitation-detail-page .search-input:focus{outline:none;border-color:#3498db}.invitation-detail-page .guestbook-item{position:relative}.invitation-detail-page .delete-btn{background:#e74c3c;color:#fff;border:none;padding:6px 14px;border-radius:4px;font-size:13px;font-weight:600;cursor:pointer;transition:all .3s}.invitation-detail-page .delete-btn:hover{background:#c0392b}.invitation-detail-page .pagination{display:flex;justify-content:center;align-items:center;gap:8px;margin-top:25px;padding-top:20px;border-top:1px solid #e9ecef}.invitation-detail-page .pagination-btn{background:#fff;border:1px solid #dee2e6;width:36px;height:36px;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;padding:0;color:#495057}.invitation-detail-page .pagination-btn:hover:not(:disabled){background:#e7f3ff;border-color:#3498db;color:#3498db}.invitation-detail-page .pagination-btn.active{background:#3498db;color:#fff;border-color:#3498db}.invitation-detail-page .pagination-btn:disabled{opacity:.4;cursor:not-allowed}.invitation-detail-page .pagination-arrow{font-size:20px;font-weight:400}.invitation-detail-page .pagination-number{min-width:36px;width:auto;padding:0 8px}@media (max-width: 768px){.invitation-detail-page .page-header{flex-direction:column;align-items:flex-start;gap:15px}.invitation-detail-page .header-left{flex-direction:column;align-items:flex-start}.invitation-detail-page .header-right{width:100%}.invitation-detail-page .edit-btn,.invitation-detail-page .save-btn,.invitation-detail-page .cancel-btn{flex:1}.invitation-detail-page .tabs{overflow-x:auto}.invitation-detail-page .form-grid,.invitation-detail-page .couple-grid,.invitation-detail-page .gallery-grid,.invitation-detail-page .gallery-grid-enhanced,.invitation-detail-page .account-list,.invitation-detail-page .account-list-enhanced{grid-template-columns:1fr}.invitation-detail-page .modal-content,.invitation-detail-page .modal-content-large{width:95%;max-width:95%}.invitation-detail-page .gallery-grid-enhanced{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:15px}}@media (min-width: 769px) and (max-width: 1200px){.invitation-detail-page .gallery-grid-enhanced{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}}.template-management-page{background:#fff;border-radius:8px;padding:30px;box-shadow:0 2px 4px #0000001a;font-family:Pretendard,-apple-system,BlinkMacSystemFont,system-ui,Roboto,Helvetica Neue,Segoe UI,Apple SD Gothic Neo,Noto Sans KR,Malgun Gothic,sans-serif}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;padding-bottom:20px;border-bottom:2px solid #f0f0f0}.page-header h2{margin:0;font-size:24px;color:#2c3e50}.template-management-page .add-btn{padding:10px 20px;background:#27ae60;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:background .3s}.template-management-page .add-btn:hover{background:#229954}.template-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}.template-card{border:1px solid #dee2e6;border-radius:8px;overflow:hidden;background:#fff;transition:box-shadow .3s}.template-card:hover{box-shadow:0 4px 12px #00000026}.template-thumbnail{height:180px;background:#f8f9fa;display:flex;align-items:center;justify-content:center;color:#6c757d;font-size:14px;border-bottom:1px solid #dee2e6}.no-thumbnail{color:#adb5bd}.template-info{padding:20px}.template-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.template-header h3{margin:0;font-size:18px;color:#2c3e50}.status-badge{padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600}.status-badge.active{background:#d4edda;color:#155724}.status-badge.inactive{background:#f8d7da;color:#721c24}.template-code{font-family:inherit;color:#6c757d;font-size:12px;margin-bottom:10px}.template-description{color:#495057;font-size:14px;line-height:1.6;margin-bottom:15px;min-height:40px}.template-actions{display:flex;gap:8px}.template-management-page .toggle-btn,.template-management-page .edit-btn,.template-management-page .delete-btn{flex:1;padding:8px;border:none;border-radius:4px;font-size:13px;font-weight:600;cursor:pointer;transition:all .3s}.template-management-page .toggle-btn{background:#ffc107;color:#000}.template-management-page .toggle-btn:hover{background:#e0a800}.template-management-page .edit-btn{background:#3498db;color:#fff}.template-management-page .edit-btn:hover{background:#2980b9}.template-management-page .delete-btn{background:#e74c3c;color:#fff}.template-management-page .delete-btn:hover{background:#c0392b}.no-data{text-align:center;padding:60px 20px;color:#6c757d;font-size:16px;grid-column:1 / -1}.loading{text-align:center;padding:100px 20px;font-size:18px;color:#666}.template-management-page .modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:2000}.template-management-page .modal-content{background:#fff;border-radius:8px;width:90%;max-width:500px;max-height:90vh;overflow-y:auto;box-shadow:0 10px 40px #0000004d}.template-management-page .modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 25px;border-bottom:1px solid #dee2e6}.template-management-page .modal-header h3{margin:0;font-size:20px;color:#2c3e50}.template-management-page .modal-close{background:none;border:none;font-size:28px;color:#6c757d;cursor:pointer;line-height:1;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .3s}.template-management-page .modal-close:hover{background:#f8f9fa;color:#2c3e50}.template-management-page .modal-body{padding:25px}.template-management-page .form-group{margin-bottom:20px}.template-management-page .form-group label{display:block;margin-bottom:8px;font-size:14px;font-weight:600;color:#495057}.template-management-page .form-input,.template-management-page .form-textarea{width:100%;padding:10px 12px;border:1px solid #ced4da;border-radius:6px;font-size:14px;transition:border-color .3s;box-sizing:border-box}.template-management-page .form-input:focus,.template-management-page .form-textarea:focus{outline:none;border-color:#3498db}.template-management-page .form-input:disabled{background:#e9ecef;color:#6c757d;cursor:not-allowed}.template-management-page .form-textarea{resize:vertical;font-family:inherit}.template-management-page .modal-footer{display:flex;gap:10px;padding:20px 25px;border-top:1px solid #dee2e6}.template-management-page .modal-footer .save-btn,.template-management-page .modal-footer .cancel-btn{flex:1;padding:12px;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s}.template-management-page .modal-footer .save-btn{background:#27ae60;color:#fff}.template-management-page .modal-footer .save-btn:hover{background:#229954}.template-management-page .modal-footer .cancel-btn{background:#6c757d;color:#fff}.template-management-page .modal-footer .cancel-btn:hover{background:#5a6268}@media (max-width: 768px){.page-header{flex-direction:column;align-items:flex-start;gap:15px}.add-btn{width:100%}.template-grid{grid-template-columns:1fr}.modal-content{width:95%;max-height:95vh}}
