.page-container{padding:20px}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.page-title{font-size:24px;font-weight:600;margin:0}.header-left{display:flex;flex-direction:column;gap:8px}.limit-info{display:flex;align-items:center;gap:6px;font-size:13px;color:#666;padding:6px 12px;background:#f0f7ff;border:1px solid #d0e7ff;border-radius:6px}.limit-info.limit-reached{background:#fff3cd;border-color:#ffc107;color:#856404}.limit-info i{font-size:16px;color:#667eea}.limit-info.limit-reached i{color:#ffc107}.limit-text{font-weight:500}.remaining{color:#28a745;font-weight:600}.remaining.limit-reached{color:#dc3545}.page-toolbar{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:8px;align-items:flex-end}.filter-group:not(.search-box){flex:0 0 auto;width:160px;display:block;margin-bottom:0}.filter-label{display:block;font-size:12px;color:#6c757d;margin-bottom:4px;white-space:nowrap}.filter-group--action{min-width:auto}.page-toolbar .filter-group .form-control{flex:none;width:100%;max-width:none}.page-toolbar .form-control{padding:6px 12px;height:auto;line-height:1.4}.search-box{position:relative;flex:0 1 320px;min-width:200px;max-width:400px}.search-box input{width:100%;box-sizing:border-box;padding-right:40px}.search-box i{position:absolute;right:12px;top:50%;transform:translateY(-50%);color:#999;pointer-events:none}.filter-group .search-box{flex:none;width:100%;max-width:none}.table-wrapper{background:#fff;border-radius:8px;overflow-x:auto;overflow-y:visible;box-shadow:0 2px 4px rgba(0,0,0,.05);-webkit-overflow-scrolling:touch}.table-wrapper table{width:100%;min-width:600px;border-collapse:collapse}@media (max-width:768px){.page-container{padding:12px}.page-header{flex-direction:column;align-items:flex-start;gap:8px}.page-title{font-size:20px}.page-toolbar{flex-direction:column;gap:8px;align-items:stretch}.filter-group{min-width:100%;width:100%}.search-box{max-width:100%;width:100%}}.page-outer{display:flex;flex-direction:column;min-height:100%}.page-outer>.page-container{padding-top:72px}.page-outer .header-left{display:flex;align-items:center;flex-direction:row;gap:12px}.page-outer .header-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.page-outer .page-title{font-size:20px;font-weight:600;margin:0}.list-page-intro{background:#e8f4ff;border:1px solid #b3d7ff;border-left:4px solid #1890ff;border-radius:6px;padding:12px 16px;margin-bottom:16px;font-size:13px;color:#1a3a52;line-height:1.65;min-width:0}.list-page-intro.is-expanded{padding:14px 16px}.list-page-intro .intro-toggle{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:0;border:none;background:transparent;color:inherit;text-align:left;cursor:pointer;font:inherit}.list-page-intro .intro-title{margin:0;font-size:14px;font-weight:600;color:#0d3d66;display:flex;align-items:center;gap:8px}.list-page-intro .intro-title i{font-size:20px;color:#1890ff;flex-shrink:0}.list-page-intro .intro-toggle-action{display:inline-flex;align-items:center;gap:4px;flex-shrink:0;font-size:13px;color:#0d3d66}.list-page-intro .intro-body{margin-top:12px;padding-top:12px;border-top:1px solid rgba(24,144,255,.2)}.list-page-intro .intro-body p,.list-page-intro .intro-text{margin:0 0 10px 0}.list-page-intro .intro-body ul,.list-page-intro .intro-list{margin:0;padding-left:18px}.list-page-intro .intro-body li,.list-page-intro .intro-list li{margin-bottom:6px}.list-page-intro .intro-body li strong,.list-page-intro .intro-list li strong{color:#0d3d66}.page-outer[data-v-8f18a618]{display:flex;flex-direction:column;min-height:100%}.page-header[data-v-8f18a618]{margin-bottom:0;background:#f5f7fa;border-bottom:1px solid #e5e7eb;box-shadow:0 2px 8px rgba(0,0,0,.06);padding:10px 20px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px}.header-left--inline[data-v-8f18a618]{display:flex;align-items:center;gap:12px;min-width:0}.header-actions[data-v-8f18a618]{display:flex;align-items:center;gap:8px}.page-header .page-title[data-v-8f18a618]{font-size:20px;font-weight:600;margin:0;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.page-container[data-v-8f18a618]{padding:20px;padding-top:72px}.btn[data-v-8f18a618]{padding:6px 16px;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;border:none;display:inline-flex;align-items:center;gap:6px}.btn-primary[data-v-8f18a618]{background:#3b82f6;color:#fff}.btn-primary[data-v-8f18a618]:hover:not(:disabled){background:#2563eb}.btn-primary[data-v-8f18a618]:disabled{opacity:.6;cursor:not-allowed}.btn-secondary[data-v-8f18a618]{background:#fff;color:#374151;border:1px solid #d1d5db}.btn-secondary[data-v-8f18a618]:hover:not(:disabled){background:#f9fafb}.btn-secondary[data-v-8f18a618]:disabled{opacity:.6;cursor:not-allowed}.spinner-sm[data-v-8f18a618]{width:14px;height:14px;border:2px solid hsla(0,0%,100%,.4);border-top-color:#fff;border-radius:50%;animation:banner-form-spin-8f18a618 .7s linear infinite;flex-shrink:0}@keyframes banner-form-spin-8f18a618{to{transform:rotate(1turn)}}.error-state[data-v-8f18a618],.loading-state[data-v-8f18a618]{background:#fff;border-radius:12px;padding:40px;text-align:center;color:#6b7280;box-shadow:0 2px 8px rgba(0,0,0,.08);max-width:900px;margin-left:auto;margin-right:auto}.error-state[data-v-8f18a618]{color:#b91c1c}.error-state .btn[data-v-8f18a618]{margin-left:10px}.form-container[data-v-8f18a618]{max-width:900px;margin:0 auto;background:#fff;border-radius:12px;padding:28px;box-shadow:0 2px 8px rgba(0,0,0,.08)}.form-section[data-v-8f18a618]{margin-bottom:0}.section-title[data-v-8f18a618]{font-size:15px;font-weight:600;color:#222;margin:0 0 16px;padding-bottom:8px;border-bottom:2px solid #f0f0f0}.form-row[data-v-8f18a618]{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}.form-group[data-v-8f18a618]{display:flex;flex-direction:column;margin-bottom:16px}.form-group[data-v-8f18a618]:last-child{margin-bottom:0}.form-group--status[data-v-8f18a618]{display:flex;flex-direction:column;justify-content:flex-end}.banner-active-toggle[data-v-8f18a618]{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid #e5e7eb;border-radius:8px;background:#fafafa;min-height:44px;box-sizing:border-box}.banner-active-label[data-v-8f18a618]{font-size:14px;font-weight:500;color:#6b7280}.banner-active-label--on[data-v-8f18a618]{color:#166534}.switch[data-v-8f18a618]{position:relative;display:inline-block;width:46px;height:24px;flex-shrink:0}.switch input[data-v-8f18a618]{opacity:0;width:0;height:0}.switch .slider[data-v-8f18a618]{position:absolute;cursor:pointer;inset:0;background:#d1d5db;border-radius:24px;transition:background .2s}.switch .slider[data-v-8f18a618]:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background:#fff;border-radius:50%;box-shadow:0 1px 3px rgba(0,0,0,.2);transition:transform .2s}.switch--banner input:checked+.slider[data-v-8f18a618]{background:#3b82f6}.switch--banner input:checked+.slider[data-v-8f18a618]:before{transform:translateX(22px)}.switch--banner input:focus-visible+.slider[data-v-8f18a618]{outline:2px solid #93c5fd;outline-offset:2px}.form-label[data-v-8f18a618]{font-size:13px;font-weight:500;color:#555;margin-bottom:5px}.form-label.required[data-v-8f18a618]:after{content:" *";color:#e74c3c}.form-control[data-v-8f18a618]{padding:8px 10px;border:1px solid #ddd;border-radius:6px;font-size:14px;width:100%;box-sizing:border-box}.form-control[data-v-8f18a618]:focus{outline:none;border-color:#1a73e8;box-shadow:0 0 0 2px rgba(26,115,232,.15)}.toggle-row[data-v-8f18a618]{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:14px;color:#374151;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.toggle-input[data-v-8f18a618]{width:18px;height:18px;cursor:pointer}.date-range-row[data-v-8f18a618]{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.date-sep[data-v-8f18a618]{color:#6b7280;flex-shrink:0}.form-hint[data-v-8f18a618]{font-size:12px;color:#9ca3af;margin:6px 0 0}@media (max-width:768px){.page-container[data-v-8f18a618]{padding:12px;padding-top:72px}.form-container[data-v-8f18a618]{padding:16px}.form-row[data-v-8f18a618]{grid-template-columns:1fr}}