body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}*{box-sizing:border-box;margin:0;padding:0}body{background:#f5f6f8;color:#333;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.header{align-items:center;background:#fff;border-bottom:1px solid #e5e8eb;display:flex;justify-content:space-between;padding:16px 24px}.header h1{font-size:18px;font-weight:700}.logout-btn{background:#fff;border:1px solid #d1d5db;border-radius:6px;cursor:pointer;font-size:13px;padding:6px 14px}.logout-btn:hover{background:#f3f4f6}.login-page{align-items:center;background:#f5f6f8;display:flex;justify-content:center;min-height:100vh}.login-card{background:#fff;border-radius:12px;box-shadow:0 2px 12px #00000014;padding:40px;text-align:center;width:360px}.login-card h2{font-size:20px;margin-bottom:24px}.login-card input{border:1px solid #d1d5db;border-radius:8px;font-size:14px;margin-bottom:12px;outline:none;padding:12px 16px;width:100%}.login-card input:focus{border-color:#3182f6}.login-card button{background:#3182f6;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:15px;font-weight:600;padding:12px;width:100%}.login-card button:hover{background:#1b64da}.physical-mail{margin:0 auto;max-width:1200px;padding:24px}.calendar-section{background:#fff;border-radius:12px;box-shadow:0 1px 4px #0000000f;padding:24px}.calendar-nav{align-items:center;display:flex;gap:20px;justify-content:center;margin-bottom:20px}.calendar-nav button{background:#fff;border:1px solid #d1d5db;border-radius:8px;cursor:pointer;font-size:16px;font-weight:600;height:36px;width:36px}.calendar-nav button:hover{background:#f3f4f6}.calendar-nav h2{font-size:18px;min-width:140px;text-align:center}.calendar-table{border-collapse:collapse;table-layout:fixed;width:100%}.calendar-table th{color:#6b7280;font-size:13px;font-weight:500;padding:8px;text-align:center}.calendar-table td{border:1px solid #f0f0f0;height:72px;padding:8px;position:relative;text-align:center;vertical-align:top}.calendar-table td.empty{background:#fafafa}.calendar-table td.day{cursor:default}.calendar-table td.has-mail{background:#eff6ff;cursor:pointer}.calendar-table td.has-mail:hover{background:#dbeafe}.calendar-table td.selected{background:#3182f6!important}.calendar-table td.selected .day-number{color:#fff}.calendar-table td.selected .mail-count{color:#bfdbfe}.day-number{font-size:14px;font-weight:500;margin-bottom:4px}.mail-counts{align-items:center;display:flex;flex-direction:column;gap:2px}.mail-count{border-radius:10px;display:inline-block;font-size:11px;font-weight:600;padding:1px 6px}.mail-count.pending{background:#dbeafe;color:#3182f6}.mail-count.sent{background:#d1fae5;color:#065f46}td.selected .mail-count{background:#fff3;color:#fff}.detail-section{background:#fff;border-radius:12px;box-shadow:0 1px 4px #0000000f;margin-top:24px;padding:24px}.detail-section h3{font-size:16px}.detail-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.sent-count-badge{background:#d1fae5;border-radius:12px;color:#065f46;font-size:13px;font-weight:600;padding:4px 12px}.letter-list{display:flex;flex-direction:column;gap:20px}.letter-card{background:#fafbfc;border:1px solid #e5e8eb;border-radius:10px;padding:20px}.letter-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.letter-index{color:#374151;font-size:15px;font-weight:700}.letter-status{border-radius:12px;font-size:12px;font-weight:600;padding:4px 10px}.status-pending{background:#fef3c7;color:#92400e}.status-sent{background:#d1fae5;color:#065f46}.status-cancelled{background:#fee2e2;color:#991b1b}.letter-info{margin-bottom:16px}.info-row{border-bottom:1px solid #f0f0f0;display:flex;padding:8px 0}.info-row label{color:#6b7280;flex-shrink:0;font-size:13px;font-weight:500;width:100px}.info-row span{color:#111827;font-size:14px;word-break:break-all}.letter-content{margin-bottom:12px}.letter-content>label{color:#6b7280;display:block;font-size:13px;font-weight:500;margin-bottom:8px}.content-page{background:#fff;border:1px solid #e5e8eb;border-radius:8px;margin-bottom:8px;padding:16px}.page-label{color:#9ca3af;font-size:11px;font-weight:600;margin-bottom:6px}.page-text{color:#374151;font-size:14px;line-height:1.7;white-space:pre-wrap}.page-images{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.letter-image{border:1px solid #e5e8eb;border-radius:6px;height:120px;object-fit:cover;width:120px}.letter-bg{margin-top:8px}.letter-bg label{color:#6b7280;font-size:13px;font-weight:500;margin-right:8px}.letter-bg span{color:#374151;font-size:13px}.tab-nav{display:flex;gap:4px}.tab-btn{background:#fff;border:1px solid #d1d5db;border-radius:6px;color:#6b7280;cursor:pointer;font-size:13px;font-weight:500;padding:6px 16px}.tab-btn:hover{background:#f3f4f6}.tab-btn.active{background:#3182f6;border-color:#3182f6;color:#fff}.payments-page{margin:0 auto;max-width:1200px;padding:24px}.search-bar{background:#fff;border-radius:12px;box-shadow:0 1px 4px #0000000f;display:flex;gap:8px;margin-bottom:20px;padding:16px}.search-bar input{border:1px solid #d1d5db;border-radius:8px;flex:1 1;font-size:14px;outline:none;padding:10px 14px}.search-bar input:focus{border-color:#3182f6}.search-bar button{background:#fff;border:1px solid #d1d5db;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px}.search-bar button:hover{background:#f3f4f6}.search-bar button[type=submit]{background:#3182f6;border-color:#3182f6;color:#fff}.search-bar button[type=submit]:hover{background:#1b64da}.payment-table-wrap{background:#fff;border-radius:12px;box-shadow:0 1px 4px #0000000f;overflow:hidden}.payment-table{border-collapse:collapse;width:100%}.payment-table th{background:#fafbfc;border-bottom:1px solid #e5e8eb;color:#6b7280;font-size:13px;font-weight:600;padding:12px 16px;text-align:left}.payment-table td{border-bottom:1px solid #f0f0f0;color:#111827;font-size:14px;padding:12px 16px}.clickable-row{cursor:pointer}.clickable-row:hover{background:#f9fafb}.id-cell{color:#6b7280;font-family:monospace;font-size:12px}.badge{border-radius:12px;display:inline-block;font-size:12px;font-weight:600;padding:3px 10px}.badge-completed{background:#d1fae5;color:#065f46}.badge-refunded{background:#fee2e2;color:#991b1b}.empty-state{color:#6b7280;padding:60px 24px;text-align:center}.load-btn,.load-more-btn{background:#3182f6;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;margin-top:12px;padding:10px 24px}.load-btn:hover,.load-more-btn:hover{background:#1b64da}.back-btn{background:#fff;border:1px solid #d1d5db;border-radius:8px;cursor:pointer;font-size:14px;margin-bottom:20px;padding:8px 16px}.back-btn:hover{background:#f3f4f6}.detail-container{display:flex;flex-direction:column;gap:20px}.detail-card{background:#fff;border-radius:12px;box-shadow:0 1px 4px #0000000f;padding:24px}.detail-card h3{color:#111827;font-size:16px;font-weight:700;margin-bottom:16px}.detail-grid{display:flex;flex-direction:column}.detail-row{border-bottom:1px solid #f0f0f0;display:flex;padding:10px 0}.detail-row label{color:#6b7280;flex-shrink:0;font-size:13px;font-weight:500;width:140px}.detail-row span{color:#111827;font-size:14px}.ticket-count{color:#3182f6;font-weight:700}.refund-ok{color:#059669;font-weight:700}.refund-no{color:#dc2626;font-weight:700}.refund-reason{color:#dc2626;font-size:13px}.reason-row{background:#fef2f2;border-radius:6px;margin-top:8px;padding:10px 12px!important}.refund-notice{background:#eff6ff;border-radius:8px;color:#3182f6;font-size:13px;line-height:1.5;margin-bottom:16px;padding:10px 14px}.refund-btn{background:#dc2626;border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:15px;font-weight:700;margin-top:20px;padding:14px;width:100%}.refund-btn:hover{background:#b91c1c}.refund-btn:disabled{background:#9ca3af;cursor:not-allowed}.canvas-row{align-items:flex-end;display:flex;gap:12px;margin:8px 0}.letter-canvas-wrap canvas{border:1px solid #e5e8eb;border-radius:8px;display:block}.download-btn{background:#fff;border:1px solid #d1d5db;border-radius:6px;cursor:pointer;flex-shrink:0;font-size:13px;padding:8px 16px;white-space:nowrap}.download-btn:hover{background:#f3f4f6}.text-details{margin-top:8px}.text-details summary{color:#6b7280;cursor:pointer;font-size:13px;-webkit-user-select:none;user-select:none}.text-details summary:hover{color:#374151}.text-details .page-text{background:#f9fafb;border-radius:6px;color:#374151;font-size:14px;line-height:1.7;margin-top:8px;padding:12px;white-space:pre-wrap}.letter-images-section{border-top:1px solid #e5e8eb;margin-top:16px;padding-top:16px}.letter-images-section>label{color:#6b7280;display:block;font-size:13px;font-weight:500;margin-bottom:10px}.attached-images{display:flex;flex-wrap:wrap;gap:12px}.attached-image-item{align-items:center;display:flex;flex-direction:column;gap:6px}.attached-image{border:1px solid #e5e8eb;border-radius:8px;cursor:pointer;height:160px;object-fit:cover;width:160px}.attached-image:hover{opacity:.85}.mark-sent-btn{background:#3182f6;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;margin-top:16px;padding:12px;width:100%}.mark-sent-btn:hover{background:#1b64da}
/*# sourceMappingURL=main.37719645.css.map*/