:root{--color-primary: #006eff;--color-primary-dark: #0056cc;--color-primary-light: #3388ff;--color-secondary: #ef4444;--color-secondary-dark: #dc2626;--color-secondary-light: #f87171;--color-white: #ffffff;--color-black: #000000;--color-gray-50: #F5F5F5;--color-gray-100: #EEEEEE;--color-gray-200: #E0E0E0;--color-gray-300: #BDBDBD;--color-gray-400: #9E9E9E;--color-gray-500: #757575;--color-gray-600: #616161;--color-gray-700: #424242;--color-gray-800: #303030;--color-gray-900: #212121;--color-success: #10B981;--color-warning: #F59E0B;--color-error: #ef4444;--color-info: #3B82F6;--font-family-base: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;--font-family-mono: source-code-pro, Menlo, Monaco, Consolas, "Courier New", monospace;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-tight: 1.25;--line-height-normal: 1.5;--line-height-relaxed: 1.75;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--border-radius-sm: .25rem;--border-radius-md: .5rem;--border-radius-lg: .75rem;--border-radius-xl: 1rem;--border-radius-full: 9999px;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--transition-fast: .15s ease-in-out;--transition-base: .25s ease-in-out;--transition-slow: .35s ease-in-out;--z-index-dropdown: 1000;--z-index-modal: 1050;--container-max-width: 1280px;--container-padding: 1rem;--header-height: 64px;--breakpoint-sm: 640px;--breakpoint-md: 768px;--breakpoint-lg: 1024px;--breakpoint-xl: 1280px}.container{width:100%;margin-left:auto;margin-right:auto;padding-left:var(--container-padding);padding-right:var(--container-padding)}@media(min-width:640px){.container{max-width:640px}}@media(min-width:768px){.container{max-width:768px}}@media(min-width:1024px){.container{max-width:1024px}}@media(min-width:1280px){.container{max-width:var(--container-max-width)}}.grid{display:grid;gap:var(--spacing-md)}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}@media(min-width:768px){.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:1024px){.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}.flex{display:flex}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-2{gap:var(--spacing-xs)}.gap-4{gap:var(--spacing-md)}.gap-6{gap:var(--spacing-lg)}.hidden{display:none}@media(min-width:768px){.md\:block{display:block}.md\:flex{display:flex}.md\:hidden{display:none}}.text-xs{font-size:var(--font-size-xs)}.text-sm{font-size:var(--font-size-sm)}.text-base{font-size:var(--font-size-base)}.text-lg{font-size:var(--font-size-lg)}.font-medium{font-weight:var(--font-weight-medium)}.font-semibold{font-weight:var(--font-weight-semibold)}.font-bold{font-weight:var(--font-weight-bold)}.ops-page{min-height:100%;background-color:#f5f7fa}.ops-page-body{padding:16px;max-width:720px;margin:0 auto}.ops-page-body--wide{max-width:960px}.ops-detail-header{display:flex;align-items:center;gap:12px;padding:16px 20px;background:#fff;border-bottom:1px solid #e5e7eb;position:sticky;top:0;z-index:10}.ops-back-btn{font-size:22px;cursor:pointer;color:#374151;flex-shrink:0;transition:color .15s}.ops-back-btn:hover{color:#111827}.ops-detail-title{font-size:17px;font-weight:600;color:#111827;margin:0}.ops-count{font-size:13px;color:#6b7280;padding:4px 0 12px}.ops-count strong{color:#111827;font-weight:600}.ops-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:16px;margin-bottom:10px;transition:box-shadow .15s,border-color .15s}.ops-card.clickable{cursor:pointer}.ops-card.clickable:active{background-color:#f9fafb}@media(hover:hover){.ops-card.clickable:hover{border-color:#93c5fd;box-shadow:0 2px 8px #3b82f61a}}.ops-card.withdrawn{opacity:.6;background-color:#f9fafb}.ops-card.inactive{border-color:#f3f4f6;background-color:#fafafa}.ops-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.ops-card-title{font-size:15px;font-weight:600;color:#111827;margin:0 0 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ops-card-meta{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.ops-card-footer{display:flex;align-items:center;justify-content:space-between;margin-top:10px;padding-top:10px;border-top:1px solid #f3f4f6}.ops-card-date{font-size:12px;color:#9ca3af}.ops-badge{display:inline-flex;align-items:center;font-size:13px;font-weight:600;padding:6px 12px;border-radius:20px;white-space:nowrap}.ops-badge.pending{background:#dbeafe;color:#1d4ed8}.ops-badge.answered{background:#dcfce7;color:#15803d}.ops-badge.rejected{background:#fee2e2;color:#dc2626}.ops-badge.notice{background:#ede9fe;color:#6d28d9}.ops-badge.guide{background:#dbeafe;color:#1d4ed8}.ops-badge.event{background:#fef3c7;color:#b45309}.ops-badge.influencer{background:#dbeafe;color:#1d4ed8}.ops-badge.advertiser{background:#dcfce7;color:#15803d}.ops-badge.active{background:#34d39926;color:#065f46}.ops-badge.inactive{background:#f59e0b26;color:#b45309}.ops-badge.withdrawn{background:#9ca3af33;color:#4b5563}.ops-badge.pending-light{background:#f0f9ff;color:#0369a1}.status-badge{display:inline-block;padding:6px 12px;border-radius:20px;font-size:13px;font-weight:600;flex-shrink:0;white-space:nowrap}.status-badge.pending{background:#dbeafe;color:#1e40af}.status-badge.approved,.status-badge.completed,.status-badge.active,.status-badge.resolved{background:#d1fae5;color:#065f46}.status-badge.rejected,.status-badge.admin-rejected,.status-badge.confirmed{background:#fee2e2;color:#991b1b}.status-badge.answered,.status-badge.cancelled,.status-badge.not-submitted{background:#f3f4f6;color:#6b7280}.status-badge.waiting,.status-badge.revision{background:#fef3c7;color:#92400e}.status-badge.recruiting,.status-badge.submitted{background:#dbeafe;color:#1e40af}.status-badge.selecting{background:#e0e7ff;color:#4338ca}.status-badge.reviewing{background:#fce7f3;color:#9f1239}.status-badge.admin-pending{background:#ede9fe;color:#6d28d9}.ops-btn{display:inline-flex;align-items:center;justify-content:center;padding:10px 20px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:background-color .15s;white-space:nowrap}.ops-btn:disabled{opacity:.5;cursor:not-allowed}.ops-btn.primary{background:#2563eb;color:#fff}.ops-btn.danger{background:#ef4444;color:#fff}.ops-btn.warning{background:#f59e0b;color:#fff}.ops-btn.secondary{background:#e5e7eb;color:#374151}.ops-btn.primary:hover:not(:disabled){background:#1d4ed8}.ops-btn.danger:hover:not(:disabled){background:#dc2626}.ops-btn.warning:hover:not(:disabled){background:#d97706}.ops-btn.secondary:hover:not(:disabled){background:#d1d5db}.ops-action-bar{display:flex;gap:10px;margin-top:16px}.ops-action-bar.stretch .ops-btn{flex:1}.ops-filter-bar{display:flex;gap:8px;margin-bottom:16px;flex-wrap:wrap}.ops-filter-btn{padding:7px 16px;border:1px solid #e5e7eb;border-radius:20px;background:#fff;font-size:13px;font-weight:500;color:#6b7280;cursor:pointer;transition:all .15s;white-space:nowrap;flex:1;text-align:center}.ops-filter-btn.active{background:#2563eb;color:#fff;border-color:#2563eb;font-weight:600}.ops-filter-btn:hover:not(.active){background:#f3f4f6}.ops-state{text-align:center;padding:48px 16px;color:#9ca3af;font-size:14px}.ops-state.error{color:#ef4444}.ops-state button{margin-top:12px;padding:8px 20px;border:1px solid #e5e7eb;border-radius:8px;background:#fff;font-size:14px;cursor:pointer;color:#374151}*{margin:0;padding:0;box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;font-family:var(--font-family-base);line-height:var(--line-height-normal);color:var(--color-gray-900);background-color:var(--color-white);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.confirm-overlay{position:fixed;inset:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:1000}.confirm-modal{background:#fff;border-radius:14px;padding:24px 20px 20px;width:calc(100% - 48px);max-width:320px;box-shadow:0 8px 32px #00000029}.confirm-message{font-size:15px;color:#111827;line-height:1.6;margin:0 0 20px;word-break:keep-all}.confirm-actions{display:flex;gap:8px}.confirm-btn-cancel{flex:1;padding:11px;border:1.5px solid #e5e7eb;border-radius:10px;background:#fff;font-size:14px;font-weight:600;color:#6b7280;cursor:pointer;transition:background .15s}.confirm-btn-cancel:hover{background:#f3f4f6}.confirm-btn-ok{flex:1;padding:11px;border:none;border-radius:10px;background:#2563eb;font-size:14px;font-weight:600;color:#fff;cursor:pointer;transition:background .15s}.confirm-btn-ok:hover{background:#1d4ed8}.toast-container{position:fixed;top:20px;right:20px;z-index:9999;display:flex;flex-direction:column;gap:12px;pointer-events:none}.toast{display:flex;align-items:center;gap:12px;min-width:300px;max-width:400px;padding:16px 20px;background:#fff;border-radius:8px;box-shadow:0 4px 12px #00000026;pointer-events:auto;animation:slideIn .3s ease-out;border-left:4px solid}.toast-success{border-left-color:#10b981}.toast-error{border-left-color:#ef4444}.toast-warning{border-left-color:#f59e0b}.toast-info{border-left-color:#3b82f6}.toast-icon{flex-shrink:0;width:24px;height:24px}.toast-success .toast-icon{color:#10b981}.toast-error .toast-icon{color:#ef4444}.toast-warning .toast-icon{color:#f59e0b}.toast-info .toast-icon{color:#3b82f6}.toast-message{flex:1;font-size:14px;font-weight:500;color:#1f2937;line-height:1.5;word-break:keep-all}.toast-close{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;background:none;border:none;color:#9ca3af;cursor:pointer;transition:color .2s}.toast-close:hover{color:#4b5563}.toast-close svg{width:20px;height:20px}@media(max-width:640px){.toast-container{left:20px;right:20px}.toast{min-width:auto;max-width:none}}.sidebar{width:260px;min-width:260px;height:100vh;position:fixed;top:0;left:0;background-color:#1e293b;display:flex;flex-direction:column;overflow:hidden;transform:translate(-100%);transition:transform .25s ease;z-index:300}.sidebar.sidebar-open{transform:translate(0)}@media(min-width:768px){.sidebar{position:sticky;top:0;transform:none;width:240px;min-width:240px;z-index:auto;transition:none}}.sidebar-logo{height:64px;min-height:64px;display:flex;align-items:center;padding:0 20px;cursor:pointer;border-bottom:1px solid rgba(255,255,255,.08)}.sidebar-logo-text{font-size:16px;font-weight:700;color:#fff;letter-spacing:-.3px}.sidebar-nav{flex:1;overflow-y:auto;padding:12px 0}.sidebar-nav::-webkit-scrollbar{width:4px}.sidebar-nav::-webkit-scrollbar-track{background:transparent}.sidebar-nav::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:2px}.sidebar-item,.sidebar-group-btn{width:100%;display:flex;align-items:center;gap:10px;padding:10px 20px;background:none;border:none;border-radius:0;color:#94a3b8;font-size:14px;font-weight:400;cursor:pointer;text-align:left;transition:background-color .15s,color .15s;line-height:1.4}.sidebar-item:hover,.sidebar-group-btn:hover{background-color:#ffffff0f;color:#e2e8f0}.sidebar-item.active{background-color:#3b82f6;color:#fff;font-weight:600}.sidebar-group-btn.active{color:#fff}.sidebar-icon{font-size:18px;flex-shrink:0}.sidebar-label{flex:1}.sidebar-chevron{font-size:18px;flex-shrink:0;color:#64748b}.sidebar-group{display:flex;flex-direction:column}.sidebar-children{display:flex;flex-direction:column;background-color:#00000026}.sidebar-child-btn{width:100%;display:flex;align-items:center;padding:8px 20px 8px 48px;background:none;border:none;color:#64748b;font-size:13px;cursor:pointer;text-align:left;transition:background-color .15s,color .15s;line-height:1.4}.sidebar-child-btn:hover{background-color:#ffffff0a;color:#94a3b8}.sidebar-child-btn.active{color:#60a5fa;font-weight:600;background-color:#3b82f61f}.sidebar-footer{padding:16px;border-top:1px solid rgba(255,255,255,.08);display:flex;flex-direction:column;gap:8px}.sidebar-user{display:flex;align-items:center;gap:10px;padding:4px 4px 8px}.sidebar-user-avatar{width:32px;height:32px;border-radius:50%;background-color:#3b82f6;color:#fff;font-size:14px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.sidebar-user-name{font-size:13px;font-weight:500;color:#cbd5e1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-logout-btn{width:100%;display:flex;align-items:center;gap:8px;padding:8px 12px;background:none;border:1px solid rgba(255,255,255,.1);border-radius:6px;color:#64748b;font-size:13px;cursor:pointer;transition:background-color .15s,color .15s,border-color .15s}.sidebar-logout-btn:hover{background-color:#ef44441a;color:#f87171;border-color:#ef44444d}.sidebar-logout-btn .sidebar-icon{font-size:16px}.admin-layout{display:flex;min-height:100vh}.admin-content{flex:1;min-width:0;background-color:#f5f7fa;overflow-y:auto;padding-top:52px}.admin-mobile-header{display:flex;align-items:center;gap:12px;position:fixed;top:0;left:0;right:0;height:52px;background-color:#1e293b;padding:0 16px;z-index:100}.admin-hamburger{display:flex;align-items:center;justify-content:center;background:none;border:none;color:#fff;font-size:24px;cursor:pointer;padding:4px;border-radius:4px}.admin-hamburger:active{background-color:#ffffff1a}.admin-mobile-title{font-size:15px;font-weight:700;color:#fff;letter-spacing:-.3px}.admin-overlay{position:fixed;inset:0;background-color:#00000080;z-index:200}@media(min-width:768px){.admin-mobile-header{display:none}.admin-content{padding-top:0}}.login-container{display:flex;justify-content:center;align-items:center;min-height:100vh;background:#f5f7fa}.login-box{background:#fff;border-radius:8px;box-shadow:0 2px 10px #00000014;padding:48px;width:100%;max-width:440px}.login-header{text-align:center;margin-bottom:30px}.login-header h1{margin:0;font-size:28px;color:#1a1a1a;font-weight:600}.login-header p{margin:8px 0 0;font-size:14px;color:#888}.login-form{display:flex;flex-direction:column;gap:20px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-size:14px;font-weight:500;color:#1a1a1a;margin-bottom:2px}.form-group input[type=text],.form-group input[type=password],.password-input-wrapper input[type=text],.password-input-wrapper input[type=password]{width:100%!important;height:44px!important;padding:12px 16px!important;border:1px solid #e0e0e0!important;border-radius:6px!important;font-size:14px!important;font-family:inherit!important;font-weight:400!important;line-height:1.5!important;color:#1a1a1a!important;background:#fafafa!important;box-sizing:border-box!important;transition:border-color .2s,box-shadow .2s!important}.form-group input::placeholder,.password-input-wrapper input::placeholder{color:#999;opacity:1;font-size:14px;font-family:inherit;font-weight:400}.form-group input[type=text]:focus,.form-group input[type=password]:focus,.password-input-wrapper input[type=text]:focus,.password-input-wrapper input[type=password]:focus{outline:none!important;border-color:#4285f4!important;background:#fff!important;box-shadow:0 0 0 3px #4285f41a!important}.form-group input[type=text]:disabled,.form-group input[type=password]:disabled,.password-input-wrapper input[type=text]:disabled,.password-input-wrapper input[type=password]:disabled{background-color:#f5f5f5!important;cursor:not-allowed!important}.password-input-wrapper input[type=password],.password-input-wrapper input[type=text]{padding-right:48px!important}.password-toggle-button{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;color:#888;transition:color .2s}.password-toggle-button:hover{color:#4285f4}.password-toggle-button svg{width:20px;height:20px}.login-button{padding:14px 20px;background:#4285f4;color:#fff;border:none;border-radius:6px;font-size:15px;font-weight:500;cursor:pointer;transition:background-color .2s,box-shadow .2s;margin-top:8px}.login-button:hover:not(:disabled){background:#3367d6;box-shadow:0 2px 8px #4285f44d}.login-button:disabled{opacity:.6;cursor:not-allowed;background:#4285f4}.login-links{margin-top:20px;display:flex;flex-direction:column;gap:10px;align-items:center}.login-links a{font-size:13px;color:#4285f4;text-decoration:none;transition:color .2s}.login-links a:hover{color:#3367d6;text-decoration:underline}.login-footer{margin-top:30px;padding-top:20px;border-top:1px solid #eee;text-align:center;font-size:12px;color:#999}.register-container{display:flex;justify-content:center;align-items:center;min-height:100vh;background:#f5f7fa;padding:20px}.register-box{background:#fff;border-radius:8px;box-shadow:0 2px 10px #00000014;padding:48px;width:100%;max-width:500px}.register-header{text-align:center;margin-bottom:30px}.register-header h1{margin:0;font-size:24px;color:#1a1a1a;font-weight:600}.register-header p{margin:8px 0 0;font-size:14px;color:#888}.register-form{display:flex;flex-direction:column;gap:18px}.register-button{padding:14px 20px;background:#4285f4;color:#fff;border:none;border-radius:6px;font-size:15px;font-weight:500;cursor:pointer;transition:background-color .2s,box-shadow .2s;margin-top:8px}.register-button:hover:not(:disabled){background:#3367d6;box-shadow:0 2px 8px #4285f44d}.register-button:disabled{opacity:.6;cursor:not-allowed;background:#4285f4}.register-links{margin-top:20px;text-align:center}.register-links a{font-size:13px;color:#4285f4;text-decoration:none;transition:color .2s}.register-links a:hover{color:#3367d6;text-decoration:underline}.register-footer{margin-top:30px;padding-top:20px;border-top:1px solid #eee;text-align:center;font-size:12px;color:#999}.register-box h2{text-align:center;color:#1a1a1a;font-size:22px;margin:0 0 16px}.success-message{text-align:center;color:#666;font-size:15px;line-height:1.6;margin-bottom:32px}.back-to-login-button{width:100%;padding:14px 20px;background:#4285f4;color:#fff;border:none;border-radius:6px;font-size:15px;font-weight:500;cursor:pointer;transition:background-color .2s,box-shadow .2s}.back-to-login-button:hover{background:#3367d6;box-shadow:0 2px 8px #4285f44d}.input-with-button{display:flex;gap:8px}.input-with-button input{flex:1}.check-button{padding:12px 16px;background:#fff;color:#4285f4;border:1px solid #4285f4;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;white-space:nowrap}.check-button:hover:not(:disabled){background:#4285f4;color:#fff}.check-button:disabled{opacity:.5;cursor:not-allowed}.validation-message{font-size:13px;margin-top:4px;display:block}.validation-message.success{color:#4caf50}.validation-message.error{color:#f44336}.password-input-wrapper{position:relative;width:100%}.password-input-wrapper input{width:100%;padding-right:40px}.password-toggle-button{position:absolute;right:10px;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;padding:0;display:flex;align-items:center;color:#6c757d}.password-strength-container{display:flex;flex-direction:column;gap:6px;margin-top:8px}.strength-bars{display:flex;gap:4px;height:6px}.strength-bar{flex:1;background:#e9ecef;border-radius:3px;transition:background-color .3s}.strength-bar.active{opacity:1}.strength-bar.weak{background:#ef4444}.strength-bar.medium{background:#f59e0b}.strength-bar.strong{background:#10b981}.strength-text-container{display:flex;align-items:center;justify-content:space-between;gap:8px}.strength-text{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.strength-text.weak{color:#ef4444}.strength-text.medium{color:#f59e0b}.strength-text.strong{color:#10b981}.strength-feedback{font-size:12px;color:#6c757d;font-weight:400}.auth-container{display:flex;justify-content:center;align-items:center;min-height:100vh;background:#f5f7fa;padding:20px}.auth-box{background:#fff;border-radius:8px;box-shadow:0 2px 10px #00000014;padding:48px;width:100%;max-width:500px}.auth-header{text-align:center;margin-bottom:30px}.auth-header h1{margin:0;font-size:24px;color:#1a1a1a;font-weight:600}.auth-header h2{margin:12px 0 0;font-size:18px;color:#666;font-weight:500}.auth-form{display:flex;flex-direction:column;gap:18px}.form-group{display:flex;flex-direction:column;gap:6px}.form-group label{font-size:14px;font-weight:500;color:#1a1a1a}.form-group input{padding:12px 16px;border:1px solid #e0e0e0;border-radius:6px;font-size:14px;transition:border-color .2s,box-shadow .2s;background:#fafafa}.form-group input:focus{outline:none;border-color:#4285f4;background:#fff;box-shadow:0 0 0 3px #4285f41a}.form-group input:disabled{background-color:#f5f5f5;cursor:not-allowed}.error-message{padding:12px;background-color:#fee;border:1px solid #fcc;border-radius:6px;color:#c33;font-size:14px;text-align:center}.auth-button{padding:14px 20px;background:#4285f4;color:#fff;border:none;border-radius:6px;font-size:15px;font-weight:500;cursor:pointer;transition:background-color .2s,box-shadow .2s;margin-top:8px}.auth-button:hover:not(:disabled){background:#3367d6;box-shadow:0 2px 8px #4285f44d}.auth-button:disabled{opacity:.6;cursor:not-allowed;background:#4285f4}.auth-links{margin-top:20px;text-align:center;font-size:13px}.auth-links a{color:#4285f4;text-decoration:none;transition:color .2s}.auth-links a:hover{color:#3367d6;text-decoration:underline}.auth-links .separator{margin:0 8px;color:#ccc}.auth-footer{margin-top:30px;padding-top:20px;border-top:1px solid #eee;text-align:center;font-size:12px;color:#999}.success-container{text-align:center}.success-icon{width:80px;height:80px;margin:0 auto 24px;background:#4caf50;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:48px;font-weight:700}.success-message{color:#1a1a1a;font-size:18px;font-weight:500;margin-bottom:20px}.info-box{background:#f8f9fa;border:1px solid #e9ecef;border-radius:6px;padding:16px;margin-bottom:24px;text-align:left}.info-box p{margin:0 0 8px;font-size:14px;line-height:1.6;color:#495057}.info-box p:last-child{margin-bottom:0}.info-box strong{color:#1a1a1a}.warning-text{color:#ff6b6b!important;font-weight:500!important}.button-group{display:flex;gap:12px;margin-top:24px}.primary-button{flex:1;padding:14px 20px;background:#4285f4;color:#fff;border:none;border-radius:6px;font-size:15px;font-weight:500;cursor:pointer;transition:background-color .2s,box-shadow .2s}.primary-button:hover{background:#3367d6;box-shadow:0 2px 8px #4285f44d}.secondary-button{flex:1;padding:14px 20px;background:#fff;color:#4285f4;border:1px solid #4285f4;border-radius:6px;font-size:15px;font-weight:500;cursor:pointer;transition:all .2s}.secondary-button:hover{background:#f0f7ff}.approval-container{display:flex;justify-content:center;align-items:center;min-height:100vh;background:#f5f7fa;padding:20px}.approval-box{background:#fff;border-radius:8px;box-shadow:0 2px 10px #00000014;padding:48px;width:100%;max-width:600px}.approval-header{text-align:center;margin-bottom:30px}.approval-header h1{margin:0;font-size:24px;color:#1a1a1a;font-weight:600}.approval-header h2{margin:8px 0 0;font-size:16px;color:#666;font-weight:400}.applicant-info{margin-bottom:30px;background:#fafafa;padding:24px;border-radius:8px;border:1px solid #e0e0e0}.applicant-info h3{color:#1a1a1a;font-size:16px;margin:0 0 18px;font-weight:600}.info-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.info-item{display:flex;flex-direction:column;gap:6px}.info-label{font-size:13px;color:#888;font-weight:500}.info-value{font-size:15px;color:#1a1a1a;font-weight:500}.action-buttons{display:flex;gap:12px;margin-top:24px}.approve-button,.reject-button{flex:1;padding:14px 20px;border:none;border-radius:6px;font-size:15px;font-weight:500;cursor:pointer;transition:background-color .2s,box-shadow .2s}.approve-button{background:#4285f4;color:#fff}.approve-button:hover:not(:disabled){background:#3367d6;box-shadow:0 2px 8px #4285f44d}.reject-button{background:#fff;color:#dc3545;border:1px solid #dc3545}.reject-button:hover:not(:disabled){background:#dc3545;color:#fff;box-shadow:0 2px 8px #dc35454d}.approve-button:disabled,.reject-button:disabled{opacity:.6;cursor:not-allowed}.approval-footer{margin-top:30px;padding-top:20px;border-top:1px solid #eee;text-align:center;font-size:12px;color:#999}.modal-overlay{position:fixed;inset:0;background-color:#0009;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:#fff;border-radius:8px;padding:32px;width:90%;max-width:480px;box-shadow:0 4px 20px #00000026}.modal-content h3{margin:0 0 20px;color:#1a1a1a;font-size:18px;font-weight:600}.reject-reason-textarea{width:100%;padding:12px 16px;border:1px solid #e0e0e0;border-radius:6px;font-size:14px;font-family:inherit;resize:vertical;margin-bottom:20px;background:#fafafa;transition:border-color .2s,background-color .2s}.reject-reason-textarea:focus{outline:none;border-color:#4285f4;background:#fff}.modal-buttons{display:flex;gap:10px}.modal-confirm-button,.modal-cancel-button{flex:1;padding:12px 20px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s,box-shadow .2s}.modal-confirm-button{background-color:#dc3545;color:#fff}.modal-confirm-button:hover:not(:disabled){background-color:#c82333;box-shadow:0 2px 8px #dc35454d}.modal-cancel-button{background-color:#888;color:#fff}.modal-cancel-button:hover:not(:disabled){background-color:#666;box-shadow:0 2px 8px #0003}.modal-confirm-button:disabled,.modal-cancel-button:disabled{opacity:.6;cursor:not-allowed}.loading{text-align:center;color:#666;font-size:16px;padding:40px}.error-icon,.status-icon{text-align:center;font-size:64px;margin-bottom:20px}.status-icon.success{color:#28a745}.status-icon.rejected{color:#dc3545}.error-message{color:#dc3545;text-align:center;margin:20px 0}.status-message{text-align:center;color:#666;margin:20px 0}.rejection-info{background-color:#f8d7da;border-left:4px solid #dc3545;padding:15px;margin:20px 0;border-radius:4px}.rejection-info strong{color:#721c24;display:block;margin-bottom:8px}.rejection-info p{color:#721c24;margin:0}.back-button{background-color:#4285f4;color:#fff;border:none;padding:14px 28px;border-radius:6px;font-size:15px;font-weight:500;cursor:pointer;transition:background-color .2s,box-shadow .2s;margin:20px auto;display:block}.back-button:hover{background-color:#3367d6;box-shadow:0 2px 8px #4285f44d}@media(max-width:768px){.approval-box{padding:30px 20px}.info-grid{grid-template-columns:1fr}.action-buttons{flex-direction:column}}.dashboard-page{min-height:100%;background:#f5f7fa}.dashboard-body{padding:20px 16px 40px;max-width:720px;margin:0 auto;display:flex;flex-direction:column;gap:20px}.dash-top-row{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.dash-greeting{font-size:16px;color:#374151;display:flex;flex-direction:column;align-items:flex-start;gap:4px;flex:1}.dash-greeting-date{font-size:12px;color:#9ca3af;font-weight:500}.dash-greeting-row{display:flex;align-items:center;gap:2px;flex-wrap:wrap}.dash-greeting-name{font-weight:700;color:#111827}.dash-greeting-text{font-weight:400}.dash-greeting-badge{display:inline-flex;align-items:center;padding:3px 10px;background:#fee2e2;color:#dc2626;font-size:12px;font-weight:600;border-radius:20px}.dash-greeting-all-clear{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;background:#f0fdf4;color:#16a34a;font-size:12px;font-weight:600;border-radius:20px}.dash-all-clear-icon{font-size:14px}.dash-refresh-btn{display:flex;align-items:center;gap:5px;padding:6px 10px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;cursor:pointer;transition:background .15s;flex-shrink:0;color:#6b7280}.dash-refresh-btn:hover:not(:disabled){background:#f3f4f6;color:#374151}.dash-refresh-btn:disabled{cursor:not-allowed;opacity:.6}.dash-refresh-icon{font-size:18px}.dash-refresh-icon.spinning{animation:dash-spin .8s linear infinite}@keyframes dash-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.dash-refresh-time{font-size:11px;color:#9ca3af;white-space:nowrap}.dash-section{background:#fff;border-radius:14px;padding:18px 16px;border:1px solid #e5e7eb}.dash-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.dash-section-title{font-size:14px;font-weight:700;color:#374151;margin:0}.dash-title-row{display:flex;align-items:center;gap:8px}.dash-action-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.dash-action-card{display:flex;flex-direction:column;align-items:center;gap:4px;padding:14px 8px;background:#f9fafb;border:1.5px solid #e5e7eb;border-radius:12px;cursor:pointer;transition:all .15s;text-align:center}.dash-action-card:hover{background:#f3f4f6}.dash-action-card.active.blue{background:#eff6ff;border-color:#93c5fd}.dash-action-card.active.violet{background:#f5f3ff;border-color:#c4b5fd}.dash-action-card.active.green{background:#f0fdf4;border-color:#86efac}.dash-action-card.active.amber{background:#fffbeb;border-color:#fcd34d}.dash-action-card.active.red{background:#fff1f2;border-color:#fca5a5}.dash-action-icon{font-size:22px;flex-shrink:0;color:#9ca3af}.dash-action-card.active.blue .dash-action-icon{color:#2563eb}.dash-action-card.active.violet .dash-action-icon{color:#7c3aed}.dash-action-card.active.green .dash-action-icon{color:#16a34a}.dash-action-card.active.amber .dash-action-icon{color:#d97706}.dash-action-card.active.red .dash-action-icon{color:#dc2626}.dash-action-count{font-size:22px;font-weight:700;color:#9ca3af;line-height:1.2;display:flex;align-items:baseline;gap:2px}.dash-action-card.active.blue .dash-action-count{color:#2563eb}.dash-action-card.active.violet .dash-action-count{color:#7c3aed}.dash-action-card.active.green .dash-action-count{color:#16a34a}.dash-action-card.active.amber .dash-action-count{color:#d97706}.dash-action-card.active.red .dash-action-count{color:#dc2626}.dash-action-unit{font-size:13px;font-weight:500}.dash-action-label{font-size:11px;color:#6b7280;font-weight:500;white-space:nowrap}.dash-action-card.active .dash-action-label{color:#374151;font-weight:600}.dash-skeleton{display:inline-block;background:#e5e7eb;border-radius:4px;color:transparent;animation:dash-shimmer 1.2s infinite}@keyframes dash-shimmer{0%,to{opacity:1}50%{opacity:.4}}.dash-point-grid{display:flex;flex-direction:column;gap:10px}.dash-point-card{display:flex;flex-direction:column;gap:10px;padding:14px;background:#f9fafb;border:1.5px solid #e5e7eb;border-radius:12px;cursor:pointer;transition:border-color .15s,background .15s;text-align:left;width:100%}.dash-point-card:hover{border-color:#93c5fd;background:#eff6ff}.dash-point-top{display:flex;align-items:center;gap:8px}.dash-point-icon{font-size:18px;flex-shrink:0;color:#6b7280}.dash-point-label{font-size:14px;font-weight:600;color:#374151}.dash-point-stats{display:flex;gap:24px;align-items:flex-end;flex-wrap:wrap}.dash-point-stat{display:flex;flex-direction:column;align-items:flex-start;gap:2px}.dash-point-val{font-size:22px;font-weight:700;line-height:1.2}.dash-point-val.pending{color:#2563eb}.dash-point-amount{font-size:18px;font-weight:700;color:#111827;line-height:1.2}.dash-point-stat-label{font-size:11px;color:#9ca3af;font-weight:500}.dash-bottom-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.dash-info-list{display:flex;flex-direction:column;gap:2px}.dash-info-row{display:flex;align-items:center;gap:8px;padding:9px 4px;border-bottom:1px solid #f3f4f6;background:none;border-left:none;border-right:none;border-top:none;cursor:pointer;transition:background .1s;border-radius:6px;text-align:left;width:100%}.dash-info-row:last-child{border-bottom:none}.dash-info-row:hover{background:#f9fafb}.dash-info-icon{font-size:18px;flex-shrink:0;color:#6b7280}.dash-info-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.dash-info-dot.blue{background:#3b82f6}.dash-info-dot.violet{background:#8b5cf6}.dash-info-dot.green{background:#22c55e}.dash-info-dot.amber{background:#f59e0b}.dash-info-dot.gray{background:#9ca3af}.dash-info-label{flex:1;font-size:13px;color:#374151;font-weight:500}.dash-info-value{font-size:13px;color:#6b7280;font-weight:600;flex-shrink:0}.dash-user-total-row{display:flex;align-items:baseline;gap:4px;margin-bottom:12px}.dash-user-total-num{font-size:28px;font-weight:700;color:#111827;line-height:1}.dash-user-total-label{font-size:14px;color:#6b7280;font-weight:500}.dash-user-stats-row{display:flex;gap:24px;align-items:flex-end;margin-bottom:14px;flex-wrap:wrap}.dash-user-stat-block{display:flex;align-items:baseline;gap:4px}.dash-user-sub-num{font-size:20px;font-weight:700;color:#2563eb;line-height:1}@media(max-width:600px){.dash-bottom-row{grid-template-columns:1fr}.dash-action-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:380px){.dash-action-grid{grid-template-columns:repeat(2,1fr)}}.ops-search-bar{position:relative;margin-bottom:12px}.ops-search-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);font-size:18px;color:#9ca3af;pointer-events:none}.ops-search-input{width:100%;padding:12px 16px 12px 42px;border:1px solid #e5e7eb;border-radius:10px;font-size:14px;background-color:#fff;color:#111827;transition:border-color .15s}.ops-search-input:focus{outline:none;border-color:#93c5fd}.ops-search-input::placeholder{color:#9ca3af}.inquiry-list-container{min-height:100vh;background-color:#f5f7fa}.inquiry-list-header{background:var(--color-primary);color:#fff;padding:19px 40px;display:flex;align-items:center;gap:12px;box-shadow:var(--shadow-md)}.inquiry-list-main{padding:40px;max-width:1400px;margin:0 auto}.status-select{flex:1;height:40px;padding:0 32px 0 12px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;font-size:14px;font-weight:500;color:#111827;cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center}.loading-container p,.error-container p,.empty-container p{margin:0;font-size:var(--font-size-base);color:var(--color-gray-600)}.inquiry-cards{display:grid;grid-template-columns:repeat(1,1fr);gap:var(--spacing-xs)}.inquiry-card{background:#fff;border-radius:var(--border-radius-md);box-shadow:var(--shadow-sm);padding:8px;cursor:pointer;transition:all var(--transition-fast);border:1px solid transparent;display:flex;flex-direction:column;min-height:200px}.inquiry-card:hover{box-shadow:var(--shadow-lg);border-color:var(--color-primary-light);transform:translateY(-2px)}.inquiry-icon{font-size:20px;line-height:1;display:flex;align-items:center;justify-content:center}.header-badges{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.inquiry-type{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-primary)}.user-type-badge{display:inline-block;padding:2px 8px;border-radius:var(--border-radius-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium)}.card-body{margin-bottom:6px;flex:1}.inquiry-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-gray-900);margin:0 0 4px;line-height:1.3}.inquiry-content{font-size:var(--font-size-xs);color:var(--color-gray-600);line-height:1.4;margin:0;min-height:2.8em}.inquiry-date{font-size:var(--font-size-xs);color:var(--color-gray-500)}@media(max-width:768px){.inquiry-list-header{padding:12px 16px}.back-button{font-size:var(--font-size-base)}.inquiry-list-main{padding:20px}.filter-tabs{flex-direction:column;gap:var(--spacing-2xs)}.filter-tab{padding:10px 16px}.inquiry-icon{font-size:18px}.inquiry-title{font-size:var(--font-size-base)}}@media(min-width:768px){.inquiry-cards{grid-template-columns:repeat(2,1fr)}}@media(min-width:1024px){.inquiry-cards{grid-template-columns:repeat(3,1fr)}}@media(min-width:1280px){.inquiry-cards{grid-template-columns:repeat(3,1fr)}}.objection-card{background:#fff;border-left:4px solid #e5e7eb}.objection-card-under_review{background:linear-gradient(135deg,#eff6ff,#fff);border-left-color:#1976d2}.objection-card-confirmed{background:linear-gradient(135deg,#fff1f1,#fff);border-left-color:#d32f2f}.objection-card-resolved{background:linear-gradient(135deg,#f0fdf4,#fff);border-left-color:#388e3c}.penalty-type{background-color:#ff9800;color:#fff;padding:2px 8px;border-radius:var(--border-radius-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);margin-right:6px}.penalty-status-badge{display:inline-block;padding:2px 8px;border-radius:var(--border-radius-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:#fff;margin-right:6px}.penalty-status-under_review{background-color:#1976d2}.penalty-status-confirmed{background-color:#d32f2f}.penalty-status-resolved{background-color:#388e3c}.user-type-badge.influencer{background:#1976d21f;color:#1565c0}.user-type-badge.advertiser{background:#f57c001f;color:#e65100}.penalty-reason{font-size:13px;color:#666;margin:8px 0;font-weight:500}.objection-card:hover{transform:none;box-shadow:var(--shadow-md)}.inquiry-detail-container{min-height:100vh;background-color:#f5f7fa}.inquiry-detail-header{background:var(--color-primary);color:#fff;padding:19px 40px;display:flex;align-items:center;gap:12px;box-shadow:var(--shadow-md)}.inquiry-detail-main{padding:40px;max-width:1000px;margin:0 auto}.loading-container,.error-container{background:#fff;border-radius:10px;padding:60px 30px;text-align:center;box-shadow:0 2px 8px #00000014}.inquiry-card{background:#fff;border-radius:10px;padding:30px;margin-bottom:20px;box-shadow:0 2px 8px #00000014}.card-header{display:flex;flex-direction:column;gap:12px;margin-bottom:20px;padding-bottom:20px;border-bottom:2px solid #f0f0f0}.header-badges{display:flex;gap:8px;align-items:center}.inquiry-type-badge{padding:6px 12px;background:#e3f2fd;color:#1976d2;border-radius:6px;font-size:13px;font-weight:600}.inquiry-meta{display:flex;gap:16px;font-size:14px;color:#666}.inquiry-title{font-size:24px;font-weight:700;color:#333;margin:20px 0;line-height:1.4}.inquiry-content{font-size:16px;color:#555;line-height:1.8;white-space:pre-wrap;word-break:break-word}.inquiry-content p{margin:0}.inquiry-images{margin-top:30px;padding-top:30px;border-top:1px solid #f0f0f0}.inquiry-images h3{font-size:16px;font-weight:600;color:#333;margin-bottom:16px}.image-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px}.image-wrapper{display:block;overflow:hidden;border-radius:8px;border:1px solid #e5e7eb;transition:transform .2s}.image-wrapper:hover{transform:scale(1.02);box-shadow:0 4px 12px #0000001a}.image-wrapper img{width:100%;height:200px;object-fit:cover;display:block}.answer-form-card{background:#fff;border-radius:10px;padding:30px;margin-bottom:20px;box-shadow:0 2px 8px #00000014}.answer-form-card h3{font-size:18px;font-weight:600;color:#333;margin:0 0 20px}.answer-textarea{width:100%;min-height:200px;padding:16px;border:1px solid #e5e7eb;border-radius:8px;font-size:15px;line-height:1.6;resize:vertical;font-family:inherit;transition:border-color .3s}.answer-textarea:focus{outline:none;border-color:#4285f4;box-shadow:0 0 0 3px #4285f41a}.answer-textarea:disabled{background-color:#f5f5f5;cursor:not-allowed}.submit-error{color:#ef4444;font-size:14px;margin-top:12px;padding:12px;background:#ef44441a;border-radius:6px}.answer-card{background:#f9fafb;border-radius:10px;padding:30px;border:2px solid #e5e7eb}.answer-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:16px;border-bottom:2px solid #e5e7eb}.answer-header h3{font-size:18px;font-weight:600;color:#3b82f6;margin:0}.answer-date{font-size:14px;color:#666}.answer-content{font-size:16px;color:#333;line-height:1.8;white-space:pre-wrap;word-break:break-word;margin-bottom:16px}.answer-content p{margin:0}.answer-footer{font-size:14px;color:#666;text-align:right;padding-top:16px;border-top:1px solid #e5e7eb}@media(max-width:768px){.inquiry-detail-header{padding:12px 16px}.back-button{font-size:var(--font-size-base)}.inquiry-detail-main,.inquiry-card,.answer-form-card,.answer-card{padding:20px}.inquiry-title{font-size:20px}.inquiry-meta{flex-direction:column;gap:8px}.image-grid{grid-template-columns:1fr}.answer-header{flex-direction:column;align-items:flex-start;gap:8px}}.announcement-list-container{min-height:100vh;background-color:#f5f7fa}.announcement-list-header{background:var(--color-primary);color:#fff;padding:19px 40px;display:flex;align-items:center;gap:12px;box-shadow:var(--shadow-md)}.announcement-list-main{padding:40px;max-width:1400px;margin:0 auto}.filter-tabs{display:flex;gap:var(--spacing-xs);margin-bottom:var(--spacing-lg);background:#fff;padding:var(--spacing-xs);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-sm)}.filter-tab{flex:1;padding:12px 24px;background:transparent;border:1px solid var(--color-gray-200);border-radius:var(--border-radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-gray-600);cursor:pointer;transition:var(--transition-fast)}.filter-tab:hover{background:var(--color-gray-50)}.filter-tab.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.stats-bar{display:flex;align-items:center;gap:10px;margin-bottom:8px}.status-select{flex:1;height:40px;padding:0 32px 0 12px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;font-size:14px;font-weight:500;color:#111827;cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center}.status-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.stats-count{white-space:nowrap;font-size:14px;color:#6b7280;background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:0 14px;height:40px;display:flex;align-items:center;gap:3px}.stats-count strong{font-size:16px;font-weight:700;color:#111827}.loading-container,.error-container,.empty-container{background:#fff;border-radius:var(--border-radius-lg);padding:60px 30px;text-align:center;box-shadow:var(--shadow-md)}.loading-container p,.error-container p,.empty-container p{margin:0 0 20px;font-size:var(--font-size-base);color:var(--color-gray-600)}.announcement-cards{display:grid;grid-template-columns:repeat(1,1fr);gap:var(--spacing-xs)}.announcement-card{background:#fff;border-radius:var(--border-radius-md);box-shadow:var(--shadow-sm);padding:8px;cursor:pointer;transition:all var(--transition-fast);border:1px solid transparent}.announcement-card:hover{box-shadow:var(--shadow-lg);border-color:var(--color-primary-light);transform:translateY(-2px)}.announcement-card.notice{border-left:4px solid #006eff}.announcement-card.guide{border-left:4px solid #2563eb}.announcement-card.event{border-left:4px solid #f59e0b}.card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:6px}.card-header-left{display:flex;align-items:center;gap:var(--spacing-xs)}.announcement-icon{font-size:20px;line-height:1;display:flex;align-items:center;justify-content:center}.header-text{display:flex;flex-direction:column;gap:4px}.header-badges{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.type-badge{display:inline-block;padding:2px 8px;border-radius:var(--border-radius-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium)}.pinned-badge{display:inline-block;padding:2px 8px;border-radius:var(--border-radius-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);background:#3b82f626;color:var(--color-primary)}.unpublished-badge{display:inline-block;padding:2px 8px;border-radius:var(--border-radius-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);background:#9ca3af1a;color:var(--color-gray-500)}.card-body{margin-bottom:6px}.announcement-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-gray-900);margin:0 0 4px;line-height:1.3}.announcement-content{font-size:var(--font-size-xs);color:var(--color-gray-600);line-height:1.4;margin:0}.card-footer{display:flex;justify-content:space-between;align-items:center;padding-top:6px;border-top:1px solid var(--color-gray-100)}.announcement-date,.created-by{font-size:var(--font-size-xs);color:var(--color-gray-500)}@media(max-width:768px){.announcement-list-header{padding:12px 16px}.back-button{font-size:var(--font-size-base)}.announcement-list-main{padding:20px}.filter-tabs{flex-direction:column;gap:var(--spacing-2xs)}.filter-tab{padding:10px 16px}.floating-add-button{width:52px;height:52px;bottom:24px;right:20px}.announcement-icon{font-size:18px}.announcement-title{font-size:var(--font-size-base)}}@media(min-width:768px){.announcement-cards{grid-template-columns:repeat(2,1fr)}}@media(min-width:1024px){.announcement-cards{grid-template-columns:repeat(3,1fr)}}@media(min-width:1280px){.announcement-cards{grid-template-columns:repeat(3,1fr)}}.announcement-detail-container{min-height:100vh;background-color:#f5f7fa}.announcement-detail-header{background:var(--color-primary);color:#fff;padding:19px 40px;display:flex;align-items:center;gap:12px;box-shadow:var(--shadow-md)}.back-arrow{color:#fff;font-size:24px;cursor:pointer}.back-arrow:hover{opacity:.8}.page-title{margin:0;font-size:20px;font-weight:600;color:#fff}.announcement-detail-main{padding:40px;max-width:900px;margin:0 auto}.loading-container,.error-container{background:#fff;border-radius:var(--border-radius-lg);padding:60px 30px;text-align:center;box-shadow:var(--shadow-md)}.announcement-card{background:#fff;border-radius:var(--border-radius-lg);box-shadow:var(--shadow-md);padding:12px;margin-bottom:var(--spacing-lg)}.ops-action-bar{margin-bottom:var(--spacing-lg)}.announcement-form-card{background:#fff;border-radius:var(--border-radius-lg);box-shadow:var(--shadow-md);padding:var(--spacing-2xl)}.form-group input[type=text],.form-group select,.form-group textarea{width:100%;padding:12px;border:1px solid var(--color-gray-300);border-radius:var(--border-radius-md);font-size:var(--font-size-base);font-family:inherit;transition:var(--transition-fast)}.form-group input[type=text]:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #38bdf81a}@media(max-width:768px){.announcement-detail-header{padding:12px 16px}.back-button{font-size:var(--font-size-base)}.announcement-detail-main{padding:20px}.announcement-card{padding:var(--spacing-lg)}.announcement-title{font-size:var(--font-size-xl)}.ops-action-bar{flex-direction:column}}.announcement-form-container{display:flex;flex-direction:column;min-height:100vh;background-color:#f5f7fa}.announcement-form-header{display:flex;align-items:center;gap:16px;padding:20px 24px;background-color:#3b82f6;border-bottom:1px solid #2563eb;position:sticky;top:0;z-index:10}.announcement-form-main{flex:1;padding:24px;display:flex;justify-content:center}.loading-container,.error-container{width:100%;max-width:800px;background:#fff;border-radius:12px;padding:60px 30px;text-align:center;box-shadow:0 1px 3px #0000001a}.loading-container p,.error-container p{margin:0;font-size:var(--font-size-base);color:var(--color-gray-600)}.retry-button{margin-top:20px;padding:10px 24px;background:var(--color-primary);color:#fff;border:none;border-radius:var(--border-radius-md);font-size:var(--font-size-sm);cursor:pointer;transition:var(--transition-fast)}.retry-button:hover{background:var(--color-primary-dark)}.announcement-card{background:#fff;border-radius:var(--border-radius-lg);box-shadow:var(--shadow-md);padding:var(--spacing-2xl);margin-bottom:var(--spacing-lg)}.card-header{display:flex;flex-direction:column;gap:var(--spacing-md);margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--color-gray-200)}.header-badges{display:flex;align-items:center;gap:var(--spacing-2xs);flex-wrap:wrap}.type-badge{display:inline-block;padding:4px 12px;border-radius:var(--border-radius-sm);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.type-badge.notice{background:#006eff1a;color:#006eff}.type-badge.guide{background:#2563eb1f;color:#2563eb}.type-badge.event{background:#f59e0b1a;color:#f59e0b}.pinned-badge{display:inline-block;padding:4px 12px;border-radius:var(--border-radius-sm);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);background:#fb923c1a;color:var(--color-warning)}.unpublished-badge{display:inline-block;padding:4px 12px;border-radius:var(--border-radius-sm);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);background:#9ca3af1a;color:var(--color-gray-500)}.announcement-meta{display:flex;flex-direction:column;gap:var(--spacing-2xs);font-size:var(--font-size-sm);color:var(--color-gray-600)}.announcement-title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-gray-900);margin:0 0 var(--spacing-lg) 0;line-height:var(--line-height-tight)}.announcement-thumbnail{margin-bottom:var(--spacing-lg)}.announcement-thumbnail img{width:100%;max-height:400px;object-fit:cover;border-radius:var(--border-radius-md)}.announcement-content{font-size:var(--font-size-base);color:var(--color-gray-700);line-height:var(--line-height-relaxed)}.announcement-content p{margin:0}.action-buttons{display:flex;gap:var(--spacing-xs);margin-bottom:var(--spacing-lg)}.edit-button,.pin-button,.publish-button,.delete-button{flex:1;padding:12px 24px;border:none;border-radius:var(--border-radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:var(--transition-fast)}.edit-button{background:var(--color-primary);color:#fff}.edit-button:hover{background:var(--color-primary-dark)}.pin-button{background:#fb923c1a;color:var(--color-warning)}.pin-button:hover{background:#fb923c33}.publish-button{background:#10b9811a;color:var(--color-success)}.publish-button:hover{background:#10b98133}.delete-button{background:#ef44441a;color:var(--color-error)}.delete-button:hover{background:#ef444433}.edit-button:disabled,.pin-button:disabled,.publish-button:disabled,.delete-button:disabled{opacity:.5;cursor:not-allowed}.form-card{width:100%;max-width:800px;background:#fff;border-radius:12px;padding:32px;box-shadow:0 1px 3px #0000001a}.form-group{margin-bottom:var(--spacing-lg)}.form-group label{display:block;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-gray-700);margin-bottom:var(--spacing-2xs)}.form-group input[type=text],.form-group input[type=date],.form-group select,.form-group textarea{width:100%;padding:12px;border:1px solid var(--color-gray-300);border-radius:var(--border-radius-md);font-size:var(--font-size-base);font-family:inherit;transition:var(--transition-fast)}.form-group input[type=text]:focus,.form-group input[type=date]:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #38bdf81a}.date-range-group{display:flex;align-items:center;gap:var(--spacing-md)}.date-input-wrapper{flex:1}.date-label{display:block;font-size:var(--font-size-xs);color:var(--color-gray-500);margin-bottom:var(--spacing-2xs)}.date-separator{font-size:var(--font-size-lg);color:var(--color-gray-400);margin-top:20px}.form-group textarea{resize:vertical;min-height:200px}.form-group-checkbox{margin-bottom:var(--spacing-md);display:flex;align-items:center}.form-group-checkbox label{display:flex;align-items:center;gap:var(--spacing-xs);font-size:var(--font-size-sm);color:var(--color-gray-700);cursor:pointer}.form-group-checkbox input[type=checkbox]{width:18px;height:18px;cursor:pointer}.checkbox-description{font-size:var(--font-size-xs);color:var(--color-gray-500);font-weight:var(--font-weight-normal)}.required{color:var(--color-error);margin-left:2px}.optional{color:var(--color-gray-400);font-weight:var(--font-weight-normal);margin-left:4px}.image-upload-area{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:var(--spacing-md);margin-top:var(--spacing-xs)}.image-upload-button{cursor:pointer;display:block}.upload-placeholder{width:150px;height:150px;border:2px dashed var(--color-gray-300);border-radius:var(--border-radius-md);display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--color-gray-50);transition:var(--transition-fast);cursor:pointer}.upload-placeholder:hover{border-color:var(--color-primary);background:#38bdf80d}.upload-icon{font-size:48px;color:var(--color-gray-400);font-weight:var(--font-weight-light);line-height:1}.upload-text{margin-top:var(--spacing-2xs);font-size:var(--font-size-sm);color:var(--color-gray-600)}.image-preview{position:relative;width:150px;height:150px;border-radius:var(--border-radius-md);overflow:hidden;border:1px solid var(--color-gray-200)}.image-preview img{width:100%;height:100%;object-fit:cover}.image-remove-button{position:absolute;top:8px;right:8px;width:28px;height:28px;border-radius:50%;background:#0009;color:#fff;border:none;font-size:20px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:var(--transition-fast)}.image-remove-button:hover{background:#ef4444e6}.image-upload-hint{font-size:var(--font-size-xs);color:var(--color-gray-500);margin-top:var(--spacing-2xs)}.submit-error{background:#ef44441a;color:var(--color-error);padding:var(--spacing-md);border-radius:var(--border-radius-md);font-size:var(--font-size-sm);margin-bottom:var(--spacing-lg)}.form-actions{display:flex;gap:var(--spacing-xs);margin-top:var(--spacing-2xl)}.cancel-button,.submit-button{flex:1;padding:12px 24px;border:none;border-radius:var(--border-radius-md);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);cursor:pointer;transition:var(--transition-fast)}.cancel-button{background:var(--color-gray-200);color:var(--color-gray-700)}.cancel-button:hover{background:var(--color-gray-300)}.submit-button{background:var(--color-primary);color:#fff}.submit-button:hover{background:var(--color-primary-dark)}.cancel-button:disabled,.submit-button:disabled{opacity:.5;cursor:not-allowed}@media(max-width:768px){.announcement-form-header{padding:16px}.page-title{font-size:20px}.announcement-form-main{padding:20px}.form-card{padding:var(--spacing-lg)}.date-range-group{flex-direction:column;align-items:stretch}.date-separator{margin-top:0;text-align:center}.form-actions{flex-direction:column}}.banner-list{display:flex;flex-direction:column;gap:8px}.banner-card{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 1px 3px #00000014;display:flex;align-items:stretch}.banner-card.deleted{opacity:.5}.order-controls{width:44px;min-width:44px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;background:#f9fafb;border-right:1px solid #e5e7eb;padding:8px 0}.order-button{width:32px;height:32px;border-radius:6px;border:1px solid #e5e7eb;background:#fff;color:#6b7280;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s;padding:0}.order-button:hover:not(:disabled){background:#3b82f6;color:#fff;border-color:#3b82f6}.order-button:disabled{opacity:.3;cursor:not-allowed}.card-content{flex:1;min-width:0}.banner-item-body{display:flex;gap:12px;padding:12px;cursor:pointer}.banner-item-thumb{position:relative;width:96px;min-width:96px;height:72px;border-radius:6px;overflow:hidden;background:#f3f4f6}.banner-item-thumb img{width:100%;height:100%;object-fit:cover}.no-image{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:#9ca3af;font-size:12px}.banner-status-badge{position:absolute;bottom:0;left:0;right:0;padding:2px 0;text-align:center;font-size:10px;font-weight:600;color:#fff}.banner-status-badge.active{background-color:#10b981d9}.banner-status-badge.inactive{background-color:#6b7280d9}.banner-status-badge.deleted{background-color:#dc2626d9}.banner-item-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px;justify-content:center}.banner-item-title{font-size:14px;font-weight:600;color:#111827;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.4}.banner-item-period{font-size:12px;color:#6b7280}.banner-item-link{font-size:12px;color:#3b82f6;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.banner-actions{display:flex;gap:6px;padding:8px 12px;border-top:1px solid #f3f4f6}.action-button{flex:1;display:flex;align-items:center;justify-content:center;gap:4px;padding:7px;border:none;border-radius:6px;font-size:12px;font-weight:600;cursor:pointer;transition:background-color .15s}.action-button.edit{background-color:#dbeafe;color:#2563eb}.action-button.edit:hover{background-color:#bfdbfe}.action-button.publish{background-color:#d1fae5;color:#059669}.action-button.publish:hover{background-color:#a7f3d0}.action-button.unpublish{background-color:#fef3c7;color:#d97706}.action-button.unpublish:hover{background-color:#fde68a}.action-button.delete{background-color:#fee2e2;color:#dc2626}.action-button.delete:hover{background-color:#fecaca}.floating-add-button{position:fixed;bottom:32px;right:32px;width:56px;height:56px;border-radius:50%;background-color:#3b82f6;color:#fff;border:none;box-shadow:0 4px 12px #3b82f666;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s;z-index:100}.floating-add-button:hover{background-color:#2563eb;box-shadow:0 6px 16px #3b82f699;transform:scale(1.05)}.floating-add-button:active{transform:scale(.95)}.saving-toast{position:fixed;bottom:104px;right:32px;background-color:#111827f2;color:#fff;padding:10px 16px;border-radius:8px;box-shadow:0 4px 12px #0000004d;display:flex;align-items:center;gap:10px;font-size:13px;font-weight:500;z-index:1000;animation:slideInUp .3s ease-out}@keyframes slideInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.saving-spinner{width:14px;height:14px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:768px){.order-controls{width:40px;min-width:40px}.order-button{width:30px;height:30px}.banner-item-thumb{width:80px;min-width:80px;height:60px}.floating-add-button{width:52px;height:52px;bottom:24px;right:20px}.saving-toast{bottom:88px;right:20px}}.banner-form-container{display:flex;flex-direction:column;min-height:100vh;background-color:#f5f7fa}.banner-form-header{display:flex;align-items:center;gap:16px;padding:20px 24px;background-color:#3b82f6;border-bottom:1px solid #2563eb;position:sticky;top:0;z-index:10}.back-arrow{font-size:24px;cursor:pointer;color:#fff;transition:color .2s}.back-arrow:hover{color:#e0e7ff}.page-title{flex:1;font-size:24px;font-weight:700;color:#fff;margin:0}.banner-form-main{flex:1;padding:24px;display:flex;justify-content:center}.banner-form{width:100%;max-width:800px;background:#fff;border-radius:12px;padding:32px;box-shadow:0 1px 3px #0000001a}.error-message,.submit-error{padding:16px;background-color:#fee2e2;border:1px solid #fecaca;border-radius:8px;color:#dc2626;margin-bottom:24px;text-align:center}.form-group{margin-bottom:24px}.form-label{display:block;font-size:14px;font-weight:600;color:#374151;margin-bottom:8px}.form-label.required:after{content:" *";color:#dc2626}.form-input{width:100%;padding:12px 16px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;transition:border-color .2s}.form-input:focus{outline:none;border-color:#3b82f6}.form-input::placeholder{color:#9ca3af}.image-upload-container{margin-bottom:16px}.file-input{display:none}.upload-box{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;border:2px dashed #d1d5db;border-radius:8px;background-color:#f9fafb;cursor:pointer;transition:all .2s}.upload-box:hover{border-color:#3b82f6;background-color:#f3f4f6}.upload-icon{width:100%;display:flex;align-items:center;justify-content:center;font-size:48px;color:#d1d5db;margin-bottom:12px;text-align:center}.upload-text{width:100%;font-size:16px;font-weight:500;color:#6b7280;margin-bottom:16px;text-align:center}.upload-specs{display:flex;flex-direction:column;gap:4px;font-size:13px;color:#9ca3af;text-align:center}.link-section{margin-top:20px}.link-input{margin-top:8px}.link-hint{margin-top:8px;font-size:13px;color:#9ca3af}.preview-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:16px;margin-bottom:0}.preview-item{position:relative;aspect-ratio:16 / 9;border-radius:8px;overflow:hidden;border:1px solid #d1d5db}.preview-image{width:100%;height:100%;object-fit:cover}.remove-button{position:absolute;top:8px;right:8px;width:32px;height:32px;background-color:#0009;color:#fff;border:none;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background-color .2s}.remove-button:hover{background-color:#dc2626e6}.date-range{display:flex;align-items:flex-start;gap:16px}.date-input-wrapper{flex:1;display:flex;flex-direction:column;gap:8px}.date-label{font-size:14px;font-weight:500;color:#6b7280}.date-input{width:100%;padding:12px 16px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;transition:border-color .2s}.date-input:focus{outline:none;border-color:#3b82f6}.channel-list{display:flex;flex-wrap:wrap;gap:10px}.channel-button{padding:10px 20px;border:2px solid #d1d5db;border-radius:8px;background-color:#fff;color:#6b7280;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.channel-button:hover{border-color:#3b82f6;color:#3b82f6}.channel-button.selected{background-color:#3b82f6;border-color:#3b82f6;color:#fff}.checkbox-container{display:flex;align-items:center;gap:16px}.checkbox-label{display:flex;align-items:center;gap:12px;cursor:pointer;line-height:1}.checkbox{width:20px;height:20px;cursor:pointer;margin:0 12px 0 0;padding:0;flex-shrink:0;vertical-align:middle}.checkbox-text{font-size:14px;font-weight:500;color:#374151;white-space:nowrap;line-height:20px;position:relative;top:1px}.checkbox-hint{font-size:13px;color:#9ca3af;line-height:20px}.button-group{display:flex;justify-content:flex-end;gap:12px;margin-top:32px}.cancel-button,.submit-button{padding:14px 24px;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s}.cancel-button{background-color:#f3f4f6;color:#6b7280}.cancel-button:hover{background-color:#e5e7eb}.cancel-button:disabled{opacity:.5;cursor:not-allowed}.submit-button{background-color:#3b82f6;color:#fff}.submit-button:hover{background-color:#2563eb}.submit-button:disabled{background-color:#9ca3af;cursor:not-allowed}@media(max-width:768px){.banner-form{padding:24px 20px}.banner-form-header{padding:16px}.page-title{font-size:20px}.date-range{flex-direction:column;align-items:stretch;gap:12px}.button-group{flex-direction:column}.preview-grid{grid-template-columns:repeat(2,1fr)}}.notification{position:fixed;top:20px;right:20px;padding:16px 24px;border-radius:8px;color:#fff;box-shadow:0 4px 12px #00000026;z-index:9999;animation:slideIn .3s ease-out}.notification-success{background-color:#10b981}.notification-error{background-color:#ef4444}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.charge-detail-value{text-align:right;flex:1}.charge-detail-value--primary{font-size:16px;font-weight:700;color:var(--color-primary)}.charge-detail-value--secondary{font-size:14px;font-weight:500;color:#1a1a1a}.payment-proof-box{background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;padding:16px;display:flex;flex-direction:column;gap:12px}.proof-file-info{display:flex;align-items:center;gap:8px}.proof-status{font-size:13px;font-weight:600;color:#059669}.proof-filename{font-size:14px;color:#1a1a1a}.proof-view-button{padding:10px 16px;background-color:#3b82f6;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.proof-view-button:hover{background-color:#2563eb}.approval-notes-textarea{width:100%;padding:12px;border:1px solid #e5e7eb;border-radius:8px;font-size:14px;font-family:inherit;line-height:1.5;resize:vertical;min-height:80px;transition:border-color .2s}.approval-notes-textarea:focus{outline:none;border-color:var(--color-primary)}.approval-notes-textarea::placeholder{color:#9ca3af}.rejection-textarea{width:100%;padding:12px;border:1px solid #e5e7eb;border-radius:8px;font-size:14px;font-family:inherit;line-height:1.5;resize:vertical;min-height:100px;transition:border-color .2s}.rejection-textarea:focus{outline:none;border-color:var(--color-primary)}.rejection-reason-display{padding:12px;background-color:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#991b1b;font-size:14px;line-height:1.5}.approve-button:disabled{opacity:.6;cursor:not-allowed}.payment-proof-upload{margin-top:8px}.image-upload-section{margin-bottom:12px}.image-slot{width:160px;height:160px;border:2px dashed #d1d5db;border-radius:12px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s;background-color:#f9fafb;position:relative;overflow:hidden}.image-slot:hover{border-color:var(--color-primary);background-color:#f0f9ff}.image-slot.filled{border-style:solid;border-color:#e5e7eb;cursor:default}.image-slot.filled:hover{border-color:#e5e7eb;background-color:#f9fafb}.image-placeholder{display:flex;flex-direction:column;align-items:center;gap:8px;color:#9ca3af}.placeholder-icon{font-size:40px;color:#d1d5db}.placeholder-text{font-size:13px;font-weight:500}.image-preview{width:100%;height:100%;object-fit:cover}.delete-image-button{position:absolute;top:6px;right:6px;width:28px;height:28px;border-radius:50%;background-color:#0009;color:#fff;border:none;font-size:20px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color .2s}.delete-image-button:hover{background-color:#000c}.file-info{margin-top:8px;display:flex;flex-direction:column;gap:2px}.file-name{font-size:14px;font-weight:500;color:#374151;word-break:break-all}.file-size{font-size:12px;color:#9ca3af}.upload-guide{margin:12px 0;font-size:13px;color:#9ca3af}.upload-submit-button{width:100%;padding:12px 20px;background:linear-gradient(135deg,var(--color-primary) 0%,#0056b3 100%);color:#fff;border:none;border-radius:8px;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s;box-shadow:0 4px 12px #007bff4d}.upload-submit-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 16px #007bff66}.upload-submit-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.payment-proof-empty{padding:20px;background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;text-align:center;color:#9ca3af;font-size:14px}.payment-proof-uploaded{margin-top:8px}.uploaded-image-slot{width:200px;height:200px;border:2px solid #e5e7eb;border-radius:12px;overflow:hidden;cursor:pointer;position:relative;transition:all .2s;background-color:#f9fafb}.uploaded-image-slot:hover{border-color:var(--color-primary);box-shadow:0 4px 12px #007bff33}.uploaded-image{width:100%;height:100%;object-fit:cover}.image-overlay{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(to top,rgba(0,0,0,.7),transparent);padding:12px;opacity:0;transition:opacity .2s}.uploaded-image-slot:hover .image-overlay{opacity:1}.overlay-text{color:#fff;font-size:13px;font-weight:500;display:block;text-align:center}.uploaded-file-info{margin-top:8px;display:flex;flex-direction:column;gap:4px}.uploaded-status{font-size:13px;font-weight:600;color:#10b981}.bank-info{font-size:13px;color:#6b7280;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.detail-value.amount-highlight{font-size:18px;font-weight:700;color:var(--color-primary)}.sheet-header h2{margin:0;font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-gray-900)}.close-button{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background-color:transparent;color:var(--color-gray-600);cursor:pointer;border-radius:var(--border-radius-md);transition:all var(--transition-fast);font-size:24px}.close-button:hover{background-color:var(--color-gray-100);color:var(--color-gray-900)}.sheet-content{flex:1;overflow-y:auto;padding:32px;display:flex;flex-direction:column;gap:32px}.detail-section{display:flex;flex-direction:column;gap:16px}.detail-section h3{margin:0;font-size:16px;font-weight:600;color:#1a1a1a;padding-bottom:8px;border-bottom:1px solid #e5e7eb}.detail-row{display:flex;justify-content:space-between;align-items:center;padding:8px 0}.detail-label{font-size:14px;color:#6b7280;font-weight:500;min-width:80px}.detail-value{font-size:14px;color:#1a1a1a;font-weight:600;text-align:right;flex:1}.request-info{background:#f9fafb;border-radius:12px;padding:20px;display:flex;flex-direction:column;gap:12px}.info-row{display:flex;justify-content:space-between;align-items:center}.info-label{font-size:var(--font-size-sm);color:var(--color-gray-600);font-weight:var(--font-weight-medium)}.info-value{font-size:var(--font-size-base);color:var(--color-gray-900);font-weight:var(--font-weight-semibold)}.points-input-section{display:flex;flex-direction:column;gap:12px}.input-label{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-gray-900)}.input-wrapper{position:relative;display:flex;align-items:center}.points-input{width:100%;padding:16px 48px 16px 16px;border:2px solid #e5e7eb;border-radius:12px;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);transition:border-color var(--transition-base)}.points-input:focus{outline:none;border-color:var(--color-primary)}.unit{position:absolute;right:16px;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-gray-600);pointer-events:none}.input-hint{font-size:var(--font-size-sm);color:var(--color-gray-600);margin:0}.notes-input-section{display:flex;flex-direction:column;gap:12px}.notes-textarea{width:100%;padding:16px;border:2px solid #e5e7eb;border-radius:12px;font-size:var(--font-size-base);font-family:inherit;line-height:1.5;resize:vertical;min-height:80px;transition:border-color var(--transition-base)}.notes-textarea:focus{outline:none;border-color:var(--color-primary)}.notes-textarea::placeholder{color:var(--color-gray-400)}.cancel-button{flex:1 1 0%!important;width:50%!important;min-width:0;max-width:none;padding:16px 24px;border:none;border-radius:12px;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s;background-color:#e5e7eb;color:#374151}.cancel-button:hover{background-color:#d1d5db}.reject-button{flex:1 1 0%!important;width:50%!important;min-width:0;max-width:none;padding:16px 24px;border:none;border-radius:12px;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s;background:linear-gradient(135deg,#dc2626,#b91c1c);color:#fff;box-shadow:0 4px 12px #dc26264d}.reject-button:disabled{opacity:.6;cursor:not-allowed}.approve-button{flex:1 1 0%!important;width:50%!important;min-width:0;max-width:none;padding:16px 24px;border:none;border-radius:12px;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s;background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;box-shadow:0 4px 12px #2563eb4d}.approve-button:hover{transform:translateY(-2px);box-shadow:0 6px 16px #2563eb66}.modal-content{background:#fff;border-radius:16px;padding:32px;max-width:400px;width:90%;box-shadow:0 8px 24px #00000026;animation:modalSlideIn .2s ease-out}.modal-content h3{margin:0 0 16px;font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-gray-900);text-align:center}.confirm-message{margin:0 0 24px;font-size:var(--font-size-base);color:var(--color-gray-700);text-align:center;line-height:1.6}.confirm-message strong{color:var(--color-primary);font-weight:var(--font-weight-bold)}.modal-confirm-button,.modal-cancel-button{flex:1;padding:14px 20px;border:none;border-radius:10px;font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);cursor:pointer;transition:all var(--transition-base)}.modal-confirm-button:disabled{opacity:.6;cursor:not-allowed}.modal-cancel-button{background-color:#e5e7eb;color:var(--color-gray-700)}.modal-cancel-button:hover:not(:disabled){background-color:#d1d5db}@media(max-width:768px){.request-card-header{flex-direction:column;align-items:flex-start;gap:12px}.status-badge{align-self:flex-end}.sheet-header,.sheet-footer{padding:20px 24px}.sheet-content,.modal-content{padding:24px}}.proof-display{display:flex;flex-direction:column;gap:12px}.proof-image-container{width:100%;max-width:400px;cursor:pointer;border-radius:8px;overflow:hidden;border:1px solid #e5e7eb;transition:all .2s}.proof-image-container:hover{box-shadow:0 4px 6px -1px #0000001a;transform:scale(1.02)}.proof-image{width:100%;height:auto;display:block}.proof-info{display:flex;align-items:center;gap:8px;padding:8px 12px;background-color:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px}.proof-icon{font-size:18px;color:#16a34a}.uploaded-filename{font-size:13px;color:#6b7280;word-break:break-all}.change-file-button{margin-top:8px;padding:10px 16px;background-color:#f3f4f6;color:#374151;border:1px solid #d1d5db;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.change-file-button:hover{background-color:#e5e7eb}.upload-section{display:flex;flex-direction:column;gap:8px;padding:20px;background-color:#f9fafb;border:2px dashed #d1d5db;border-radius:8px;align-items:center}.upload-button{display:flex;align-items:center;gap:8px;padding:12px 24px;background-color:var(--color-primary);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.upload-button:hover{background-color:var(--color-primary-dark)}.upload-hint{font-size:13px;color:#6b7280}.no-proof{padding:20px;background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;text-align:center;color:#6b7280;font-size:14px}.preview-section{margin-top:16px;padding:16px;background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:8px}.preview-section h4{margin:0 0 12px;font-size:14px;font-weight:600;color:#374151}.preview-image{width:100%;max-width:300px;height:auto;border-radius:8px;margin-bottom:12px}.preview-actions{display:flex;gap:12px;justify-content:flex-end}.cancel-upload-button{padding:10px 20px;background-color:#fff;color:#374151;border:1px solid #d1d5db;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.cancel-upload-button:hover{background-color:#f3f4f6}.confirm-upload-button{padding:10px 20px;background-color:var(--color-primary);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.confirm-upload-button:hover{background-color:var(--color-primary-dark)}.confirm-upload-button:disabled{background-color:#9ca3af;cursor:not-allowed}.approval-notes-display{padding:12px;background-color:#f0f9ff;border:1px solid #bfdbfe;border-radius:8px;color:#1e40af;font-size:14px;line-height:1.5}.total-amount-card{background:linear-gradient(135deg,#3b82f6,#2563eb);border-radius:12px;padding:20px;margin-bottom:24px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 4px 12px #3b82f633}.total-label{font-size:14px;color:#ffffffe6;font-weight:500}.total-value{font-size:24px;font-weight:700;color:#fff}.request-card-header{display:flex;flex-direction:row;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #f3f4f6;gap:12px}.card-user-info{display:flex;flex-direction:row;align-items:center;gap:12px;flex:1;min-width:0}.card-user-avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#3b82f6,#2563eb);display:flex;align-items:center;justify-content:center;flex-shrink:0}.card-avatar-text{color:#fff;font-size:16px;font-weight:600}.card-user-details{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}.card-user-name{font-size:16px;font-weight:600;color:#1a1a1a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-email{font-size:13px;color:#6b7280;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card-body{display:flex;flex-direction:column;gap:10px;margin-bottom:12px}.info-row{display:flex;align-items:center;gap:8px}.info-row.amount-row{justify-content:space-between}.info-label{font-size:14px;color:#6b7280;min-width:70px}.info-value{font-size:14px;color:#1a1a1a;font-weight:500}.info-value.amount{font-size:18px;font-weight:700;color:var(--color-primary)}.charge-summary-value{text-align:right}.charge-summary-value--primary{font-size:18px;font-weight:700;color:var(--color-primary)}.charge-summary-value--secondary{font-size:14px;font-weight:500;color:#1a1a1a}.charge-summary-value--deduction{color:#b91c1c}.bank-icon{font-size:16px;color:#6b7280;flex-shrink:0}.info-value.bank{font-size:13px;color:#4b5563;flex:1}.card-footer{display:flex;justify-content:space-between;align-items:center;padding-top:12px;border-top:1px solid #f3f4f6}.overlay{position:fixed;inset:0;background-color:#00000080;z-index:999;animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.bottom-sheet{position:fixed;left:0;right:0;bottom:0;background-color:#fff;border-radius:20px 20px 0 0;box-shadow:0 -4px 20px #00000026;z-index:1000;animation:slideUp .3s ease-out;max-height:80vh;overflow:hidden;display:flex;flex-direction:column}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.sheet-header{display:flex;align-items:center;justify-content:space-between;padding:24px 32px;border-bottom:1px solid #e5e7eb;flex-shrink:0}.sheet-header h2{margin:0;font-size:20px;font-weight:700;color:#1a1a1a}.close-button{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background-color:transparent;color:#6b7280;cursor:pointer;border-radius:8px;transition:all .2s;font-size:24px}.close-button:hover{background-color:#f3f4f6;color:#1a1a1a}.sheet-content{flex:1;overflow-y:auto;padding:32px;display:flex;flex-direction:column;gap:24px}.detail-section h3{margin:0 0 16px;font-size:16px;font-weight:600;color:#1a1a1a}.detail-value--deduction{color:#b91c1c}.detail-row{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid #f3f4f6}.detail-row:last-child{border-bottom:none}.detail-label{font-size:14px;color:#6b7280}.detail-value{font-size:14px;color:#1a1a1a;font-weight:500}.detail-value.highlight{font-size:16px;font-weight:700;color:var(--color-primary)}.detail-value.amount-highlight{font-size:18px;font-weight:700;color:#2563eb}.user-info-row{align-items:center}.detail-value-with-icon{display:flex;align-items:center;gap:8px}.user-avatar-small{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,#3b82f6,#2563eb);display:flex;align-items:center;justify-content:center;flex-shrink:0}.avatar-text-small{color:#fff;font-size:14px;font-weight:600}.reject-textarea-inline{width:100%;min-height:100px;padding:12px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;font-family:inherit;resize:vertical;transition:border-color .2s;margin-top:8px}.reject-textarea-inline:focus{outline:none;border-color:var(--color-primary)}.reject-textarea-inline::placeholder{color:#9ca3af}.reject-textarea-inline:disabled{background-color:#f3f4f6;cursor:not-allowed}.rejection-reason-box{padding:12px;background-color:#fee2e2;border:1px solid #fecaca;border-radius:8px;color:#991b1b;font-size:14px;line-height:1.5;margin-top:8px}.warning-box{display:flex;gap:12px;padding:16px;background-color:#fef3c7;border-radius:8px;border:1px solid #fde68a}.warning-icon{font-size:20px;flex-shrink:0}.warning-content{flex:1}.warning-title{font-size:14px;font-weight:600;color:#92400e;margin-bottom:4px}.warning-text{font-size:13px;color:#92400e;line-height:1.5}.sheet-footer{display:flex;gap:16px;padding:24px 32px;border-top:1px solid #e5e7eb;flex-shrink:0;background-color:#fff}.reject-button,.approve-button{flex:1;padding:16px 24px;border:none;border-radius:12px;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s}.reject-button{background:linear-gradient(135deg,#dc2626,#b91c1c);color:#fff;box-shadow:0 4px 12px #dc26264d}.reject-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 16px #dc262666}.reject-button:disabled{opacity:.5;cursor:not-allowed}.approve-button{background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;box-shadow:0 4px 12px #2563eb4d}.approve-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 16px #2563eb66}.approve-button:disabled{opacity:.5;cursor:not-allowed;transform:none}.modal-overlay{position:fixed;inset:0;background-color:#00000080;z-index:1001;display:flex;align-items:center;justify-content:center;animation:fadeIn .2s ease}.modal-content{background:#fff;border-radius:16px;padding:32px;max-width:500px;width:90%;box-shadow:0 8px 24px #00000026;animation:modalSlideIn .2s ease-out}@keyframes modalSlideIn{0%{transform:scale(.9);opacity:0}to{transform:scale(1);opacity:1}}.modal-content h3{margin:0 0 16px;font-size:20px;font-weight:700;color:#1a1a1a}.reject-textarea{width:100%;min-height:120px;padding:14px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;font-family:inherit;resize:vertical;margin-bottom:20px;transition:border-color .2s}.reject-textarea:focus{outline:none;border-color:var(--color-primary)}.reject-textarea::placeholder{color:#9ca3af}.reject-textarea:disabled{background-color:#f3f4f6;cursor:not-allowed}.modal-buttons{display:flex;gap:12px}.modal-confirm-button,.modal-cancel-button{flex:1;padding:14px 20px;border:none;border-radius:10px;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s}.modal-confirm-button{background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff}.modal-confirm-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #2563eb4d}.modal-confirm-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.modal-cancel-button{background-color:#e5e7eb;color:#6b7280}.modal-cancel-button:hover:not(:disabled){background-color:#d1d5db;color:#1a1a1a}.modal-cancel-button:disabled{opacity:.6;cursor:not-allowed}@media(max-width:768px){.sheet-header,.sheet-footer{padding:20px 24px}.sheet-content,.modal-content{padding:24px}}.pending-campaigns-container{min-height:100vh;background-color:#f5f7fa}.pending-campaigns-main{padding:24px 40px;max-width:800px;margin:0 auto}.filter-buttons{display:flex;gap:8px;margin-bottom:20px}.filter-btn{padding:10px 20px;border:none;border-radius:20px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;background-color:#f3f4f6;color:#6b7280}.filter-btn.active{background-color:#fff;color:#1a1a1a;box-shadow:0 2px 4px #0000001a;font-weight:600}.filter-btn:hover:not(.active){background-color:#e5e7eb}.campaigns-list{display:flex;flex-direction:column;gap:16px}.campaign-card{background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 8px #00000014;transition:all .2s;border:1px solid transparent}.campaign-card.clickable{cursor:pointer}.campaign-card.clickable:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001f;border-color:var(--color-primary)}.campaign-card-header{display:flex;flex-direction:row;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #f3f4f6;gap:12px}.card-company-info{display:flex;flex-direction:row;align-items:center;gap:12px;flex:1;min-width:0}.card-company-avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#8b5cf6,#7c3aed);display:flex;align-items:center;justify-content:center;flex-shrink:0}.card-avatar-icon{color:#fff;font-size:20px}.card-company-details{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}.card-company-name{font-size:16px;font-weight:600;color:#1a1a1a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.campaign-category,.campaign-owner{font-size:13px;color:#6b7280;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.campaign-body{margin-bottom:12px}.campaign-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.stat-item{display:flex;flex-direction:column;gap:4px;text-align:center}.stat-label{font-size:12px;color:#9ca3af;font-weight:500}.stat-value{font-size:15px;color:#1a1a1a;font-weight:600}.campaign-footer{display:flex;justify-content:space-between;align-items:center;padding-top:12px;border-top:1px solid #f3f4f6;gap:12px}.campaign-list-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;transition:all .2s;border:1px solid transparent;display:flex;gap:16px;align-items:stretch;padding:16px}.campaign-list-card.clickable{cursor:pointer}.campaign-list-card.clickable:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001f;border-color:var(--color-primary)}.campaign-list-thumbnail{position:relative;width:80px;height:80px;flex-shrink:0;align-self:center;border-radius:8px;overflow:hidden;background:#f3f4f6}.campaign-list-thumbnail img{width:100%;height:100%;object-fit:cover}.campaign-list-dday{position:absolute;bottom:0;left:0;right:0;background:#006effd9;color:#fff;font-size:10px;font-weight:700;text-align:center;padding:3px 0}.campaign-list-info{flex:1;display:flex;flex-direction:column;justify-content:space-between;height:80px;min-width:0;overflow:hidden}.campaign-list-top-row{display:flex;align-items:center;gap:6px}.campaign-list-category{font-size:12px;color:#9ca3af;font-weight:500}.campaign-list-channels{display:flex;align-items:center;gap:4px}.campaign-list-channel-icon{font-size:13px;color:#9ca3af}.campaign-list-top-row .status-badge{margin-left:auto;padding:3px 8px;font-size:11px}.campaign-list-name{font-size:15px;font-weight:700;color:#1f2937;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.campaign-list-owner{flex:1;font-size:12px;color:#9ca3af;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.campaign-list-meta{display:flex;align-items:center;gap:6px;font-size:13px;color:#374151;font-weight:500}.campaign-list-meta-divider{color:#d1d5db}.campaign-list-dates{font-size:11px;color:#9ca3af}@media(max-width:768px){.pending-campaigns-main{padding:20px}.campaign-card{padding:16px}.campaign-card-header{flex-direction:column;align-items:flex-start;gap:12px}.status-badge{align-self:flex-end}.campaign-stats{grid-template-columns:1fr;gap:12px}.stat-item{flex-direction:row;justify-content:space-between;text-align:left}.campaign-footer{flex-direction:column;align-items:flex-start;gap:4px}}.campaign-detail-container{min-height:100vh;background-color:#f5f7fa}.campaign-detail-main{padding:24px 40px;max-width:800px;margin:0 auto}.loading,.error{text-align:center;padding:40px;background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014}.error{color:#dc2626}.info-section{margin-bottom:20px}.section-title{font-size:16px;font-weight:600;color:#1a1a1a;margin-bottom:12px}.info-card{background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 8px #00000014}.advertiser-info{display:flex;align-items:center;gap:16px}.advertiser-avatar{width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,#8b5cf6,#7c3aed);display:flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden}.avatar-icon{color:#fff;font-size:28px}.avatar-image{width:100%;height:100%;object-fit:cover}.advertiser-details{flex:1}.advertiser-name{font-size:18px;font-weight:600;color:#1a1a1a;margin-bottom:4px}.advertiser-nickname{font-size:14px;color:#6b7280}.info-row{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid #f3f4f6}.info-label{font-size:14px;color:#6b7280;font-weight:500;min-width:140px}.info-value{font-size:14px;color:#1a1a1a;font-weight:500;text-align:right;flex:1}.info-value.campaign-title{font-weight:600;font-size:15px}.info-value.points{color:#3b82f6;font-weight:600}.content-text{font-size:14px;color:#4b5563;line-height:1.6;white-space:pre-wrap}.condition-list{list-style:none;padding:0;margin:0}.condition-list li{font-size:14px;color:#4b5563;padding:8px 0 8px 20px;position:relative}.condition-list li:before{content:"•";position:absolute;left:0;color:var(--color-primary);font-weight:700}.images-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px}.image-item{position:relative;padding-top:100%;overflow:hidden;border-radius:8px;background-color:#f3f4f6}.image-item img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover}.action-section .info-card{margin-bottom:16px}.rejection-textarea{width:100%;padding:12px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;color:#1a1a1a;font-family:inherit;resize:vertical;outline:none}.rejection-textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #8b5cf61a}.rejection-textarea::placeholder{color:#9ca3af}.char-count{text-align:right;font-size:12px;color:#9ca3af;margin-top:8px}.average-rating-content{text-align:center;padding:20px;display:flex;flex-direction:column;align-items:center;gap:8px}.rating-number{font-size:32px;font-weight:700;color:#333}.rating-count{font-size:14px;color:#666}.evaluations-list{display:flex;flex-direction:column;gap:12px}.evaluation-card{background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 8px #00000014;border:1px solid #f3f4f6}.evaluation-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.reviewer-info{display:flex;align-items:center;gap:12px}.reviewer-avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:700;flex-shrink:0}.reviewer-details{display:flex;flex-direction:column;gap:4px}.reviewer-name{font-size:16px;font-weight:600;color:#333}.evaluation-date{font-size:14px;color:#666}.rating-stars-small{display:flex;align-items:center;gap:8px}.rating-number-small{font-size:16px;font-weight:700;color:#333}.evaluation-comment{font-size:14px;line-height:1.6;color:#555;padding:12px;background:#f9f9f9;border-radius:6px}@media(max-width:768px){.campaign-detail-header{padding:16px 20px}.campaign-detail-main{padding:20px}.info-row{flex-direction:column;align-items:flex-start;gap:6px}.info-label{min-width:auto}.info-value{text-align:left}.advertiser-info{flex-direction:column;align-items:center;text-align:center}.images-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.evaluation-header{flex-direction:column;align-items:flex-start;gap:12px}.rating-stars-small{align-self:flex-end}}.history-count{margin-left:12px;font-size:14px;font-weight:600;color:#ef4444;background-color:#fee2e2;padding:4px 12px;border-radius:12px}.rejection-timeline{display:flex;flex-direction:column;gap:16px}.timeline-item{display:flex;gap:16px;position:relative}.timeline-item:not(:last-child):before{content:"";position:absolute;left:15px;top:30px;bottom:-16px;width:2px;background:#e5e7eb}.timeline-marker{width:30px;height:30px;border-radius:50%;background:linear-gradient(135deg,#dc2626,#b91c1c);color:#fff;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;flex-shrink:0;z-index:1}.timeline-content{flex:1;padding:12px 16px;background:#fafafa;border-radius:8px;border-left:3px solid #EF4444}.timeline-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;flex-wrap:wrap;gap:8px}.timeline-date{font-size:13px;font-weight:600;color:#374151}.timeline-admin{font-size:12px;color:#6b7280}.timeline-reason{font-size:14px;line-height:1.6;color:#1f2937;white-space:pre-wrap;word-break:break-word}.campaign-applicants-container{min-height:100vh;background-color:#f5f7fa}.applicants-main{padding:24px 40px;max-width:800px;margin:0 auto}.loading,.error-message,.empty-state{text-align:center;padding:40px;background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014}.error-message{color:#dc2626}.campaign-info-card{background:#fff;border-radius:12px;padding:20px;margin-bottom:20px;box-shadow:0 2px 8px #00000014}.campaign-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #f3f4f6}.company-info{display:flex;align-items:center;gap:12px;flex:1;min-width:0}.company-avatar{width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,#8b5cf6,#7c3aed);display:flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden}.company-avatar .avatar-image{width:100%;height:100%;object-fit:cover}.company-avatar .avatar-icon{color:#fff;font-size:24px}.company-details{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}.company-name{font-size:18px;font-weight:600;color:#1a1a1a}.campaign-stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.stat-item{display:flex;flex-direction:column;gap:6px}.stat-label{font-size:13px;color:#9ca3af;font-weight:500}.stat-value{font-size:16px;color:#1a1a1a;font-weight:600}.stat-value.points{color:#3b82f6}.applicants-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:24px}.review-stats{display:grid;grid-template-columns:repeat(7,1fr);gap:16px;margin-bottom:24px}.stat-box{background:#fff;border-radius:12px;padding:20px;text-align:center;box-shadow:0 2px 8px #00000014;display:flex;flex-direction:column;gap:8px}.stat-number{font-size:28px;font-weight:700}.stat-number.total{color:#6b7280}.stat-number.approved{color:#10b981}.stat-number.waiting{color:#f59e0b}.stat-name{font-size:14px;color:#6b7280;font-weight:500}.review-period-banner{background:#eff6ff;border:1px solid #bfdbfe;border-radius:10px;padding:12px 16px;margin-bottom:16px;font-size:14px;color:#1d4ed8;font-weight:500}.extension-request-banner{display:flex;align-items:center;justify-content:space-between;background:#fff8e6;border:1px solid #f5c842;border-radius:10px;padding:14px 16px;margin-bottom:16px;gap:12px}.extension-request-info{display:flex;flex-direction:column;gap:4px}.extension-request-title{font-size:14px;font-weight:600;color:#5a4a00}.extension-request-meta{font-size:12px;color:#a07800}.extension-request-actions{display:flex;gap:8px;flex-shrink:0}.extension-approve-btn{background:#22c55e;color:#fff;border:none;border-radius:8px;padding:8px 16px;font-size:13px;font-weight:600;cursor:pointer}.extension-approve-btn:disabled{opacity:.6;cursor:not-allowed}.extension-reject-btn{background:#fff;color:#ef4444;border:1px solid #ef4444;border-radius:8px;padding:8px 16px;font-size:13px;font-weight:600;cursor:pointer}.extension-reject-btn:disabled{opacity:.6;cursor:not-allowed}.applicants-list{display:flex;flex-direction:column;gap:16px}.applicant-card{background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 8px #00000014;transition:all .2s;border:1px solid transparent}.applicant-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001f;border-color:var(--color-primary)}.applicant-header{margin-bottom:0}.applicant-info{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;margin-bottom:8px;padding:8px;border:none;background:transparent}.applicant-avatar{width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,#3b82f6,#2563eb);display:flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden}.applicant-avatar .avatar-image{width:100%;height:100%;object-fit:cover}.applicant-avatar .avatar-icon{color:#fff;font-size:24px}.applicant-details{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}.applicant-name{font-size:16px;font-weight:600;color:#1a1a1a}.applicant-email{font-size:13px;color:#6b7280;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.applicant-message{background:#f9fafb;border-radius:8px;padding:12px;margin-top:0;margin-bottom:12px}.message-label{font-size:12px;color:#6b7280;font-weight:500;margin-bottom:6px}.message-content{font-size:14px;color:#374151;line-height:1.6;white-space:pre-wrap;word-break:break-word}.audit-result{display:flex;align-items:flex-start;gap:8px;padding:8px 12px;border-radius:8px;margin-bottom:12px;font-size:13px;line-height:1.5}.audit-result.pass{background:#d1fae5;color:#065f46}.audit-result.fail{background:#fee2e2;color:#991b1b}.audit-result-badge{font-weight:700;white-space:nowrap;flex-shrink:0}.audit-result-message{color:inherit;opacity:.85}.applicant-footer{padding-top:12px;border-top:1px solid #f3f4f6}.footer-label{font-size:12px;color:#9ca3af}.stat-number.not-submitted{color:#9ca3af}.stat-number.admin-pending{color:#8b5cf6}.stat-number.admin-rejected{color:#ef4444}.stat-number.submitted{color:#3b82f6}.stat-number.revision{color:#f59e0b}@media(max-width:768px){.applicants-main{padding:20px}.campaign-info-card,.applicant-card{padding:16px}.campaign-stats-grid,.applicants-stats{grid-template-columns:1fr;gap:12px}.review-stats{grid-template-columns:repeat(4,1fr);gap:12px}.applicant-header{flex-direction:column;align-items:flex-start;gap:12px}.status-badge{align-self:flex-end}}.review-detail-container{min-height:100vh;background-color:#f5f7fa}.review-detail-main{padding:24px 40px;max-width:760px;margin:0 auto;display:flex;flex-direction:column;gap:16px}.loading-container,.error-container{background:#fff;border-radius:12px;padding:60px 30px;text-align:center;box-shadow:0 2px 8px #00000014}.error-container p{color:#ef4444;margin-bottom:20px;font-size:16px}.review-summary-card{background:#fff;border-radius:12px;padding:20px 24px;box-shadow:0 2px 8px #00000014;display:flex;align-items:center;justify-content:space-between}.reward-points{font-size:22px;font-weight:700;color:#3b82f6}.detail-card{background:#fff;border-radius:12px;padding:20px 24px;box-shadow:0 2px 8px #00000014}.card-title{font-size:15px;font-weight:600;color:#374151;margin:0 0 16px;padding-bottom:12px;border-bottom:1px solid #f3f4f6}.info-row{display:flex;align-items:flex-start;gap:12px;padding:8px 0;border-bottom:1px solid #f9fafb}.info-row:last-child{border-bottom:none}.info-label{font-size:13px;color:#9ca3af;font-weight:500;min-width:72px;flex-shrink:0;padding-top:2px}.info-value{font-size:14px;color:#1a1a1a;word-break:break-word}.review-link{font-size:14px;color:#3b82f6;text-decoration:none;display:flex;align-items:center;gap:4px;word-break:break-all}.review-link:hover{text-decoration:underline}.link-icon{font-size:16px;flex-shrink:0}.checklist-note{font-size:12px;color:#9ca3af;margin:0 0 12px}.checklist{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}.checklist-item{display:flex;align-items:center;gap:8px}.checklist-item.manual{cursor:pointer;border-radius:8px;padding:6px 8px;margin:0 -8px;transition:background-color .15s ease}.checklist-item.manual:hover{background:#f9fafb}.checklist-item.manual:focus-within{background:#f3f4f6}.check-icon{font-size:20px;color:#d1d5db;flex-shrink:0}.check-icon.checked{color:#10b981}.check-text-group{display:flex;flex-direction:column;gap:3px;flex:1;min-width:0}.check-label{font-size:14px;color:#374151;display:flex;align-items:center;gap:6px;word-break:break-word}.check-actual{font-size:12px;color:#6b7280;font-weight:500}.auto-badge{font-size:11px;background:#e0f2fe;color:#0369a1;padding:2px 6px;border-radius:4px;font-weight:500}.manual-badge{font-size:11px;background:#f3f4f6;color:#4b5563;padding:2px 6px;border-radius:4px;font-weight:500}.message-history{display:flex;flex-direction:column;gap:12px}.history-entry{background:#f9fafb;border-radius:8px;padding:12px 16px;border-left:3px solid #e5e7eb}.history-entry.influencer{border-left-color:#3b82f6}.history-entry.owner{border-left-color:#f59e0b}.history-entry.admin{border-left-color:#ef4444}.history-header{display:flex;align-items:center;gap:8px;margin-bottom:8px;flex-wrap:wrap}.history-type-badge{font-size:11px;font-weight:600;padding:2px 8px;border-radius:4px}.history-type-badge.influencer{background:#dbeafe;color:#1e40af}.history-type-badge.owner{background:#fef3c7;color:#92400e}.history-type-badge.admin{background:#fee2e2;color:#991b1b}.history-author{font-size:13px;font-weight:500;color:#374151}.history-date{font-size:12px;color:#9ca3af;margin-left:auto}.history-message{font-size:14px;color:#374151;line-height:1.6;margin:0;white-space:pre-wrap;word-break:break-word}.action-card{border:2px solid #ede9fe}.reject-textarea{width:100%;min-height:100px;padding:12px;border:1px solid #e5e7eb;border-radius:8px;font-size:14px;line-height:1.6;resize:vertical;font-family:inherit;transition:border-color .2s;box-sizing:border-box}.reject-textarea:focus{outline:none;border-color:#8b5cf6;box-shadow:0 0 0 3px #8b5cf61a}.reject-textarea:disabled{background-color:#f9fafb;cursor:not-allowed}.action-error{color:#ef4444;font-size:13px;margin-top:8px;padding:10px 12px;background:#ef444414;border-radius:6px}.status-notice{background:#fff;border-radius:12px;padding:16px 24px;box-shadow:0 2px 8px #00000014;font-size:14px;font-weight:500;text-align:center;color:#6b7280}.status-notice.approved{background:#d1fae5;color:#065f46}.status-notice.submitted{background:#dbeafe;color:#1e40af}.status-notice.revision{background:#fef3c7;color:#92400e}.status-notice.admin-rejected{background:#fee2e2;color:#991b1b}@media(max-width:768px){.review-detail-main{padding:16px 20px}.detail-card,.review-summary-card{padding:16px}}.cv-list,.cv-item-card{display:flex;flex-direction:column;gap:10px}.cv-card-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.cv-cell-user{display:flex;align-items:center;gap:10px;min-width:0;flex:1}.cv-item-avatar{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,#3b82f6,#2563eb);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:600;color:#fff;flex-shrink:0}.cv-item-user-info{display:flex;flex-direction:column;min-width:0}.cv-item-name{font-size:14px;font-weight:600;color:#111827;word-break:break-word}.cv-item-email{font-size:12px;color:#9ca3af;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cv-card-meta{display:flex;align-items:center;gap:6px;flex-shrink:0;flex-wrap:wrap;justify-content:flex-end}.cv-item-date{font-size:12px;color:#9ca3af;white-space:nowrap}.cv-badge-grade{display:inline-flex;align-items:center;font-size:13px;font-weight:600;color:#fff;padding:6px 12px;border-radius:20px;white-space:nowrap}.cv-card-bottom{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-top:8px;border-top:1px solid #f3f4f6}.cv-cell-channel{display:flex;align-items:center;gap:6px;min-width:0;flex:1}.cv-channel-icon{font-size:16px;flex-shrink:0}.cv-item-channel-url{font-size:12px;color:#374151;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-decoration:none}.cv-item-channel-url:hover{color:#111827;text-decoration:underline}.cv-card-action{flex-shrink:0}.cv-certify-btn{padding:6px 14px;border-radius:8px;border:none;background:#dbeafe;font-size:12px;font-weight:600;color:#2563eb;cursor:pointer;transition:background-color .15s;white-space:nowrap}.cv-certify-btn:hover{background:#bfdbfe}.cv-edit-btn{padding:6px 14px;border-radius:8px;border:none;background:#f3f4f6;font-size:12px;font-weight:600;color:#6b7280;cursor:pointer;transition:background-color .15s;white-space:nowrap}.cv-edit-btn:hover{background:#e5e7eb}.cv-action-group{display:flex;align-items:center;gap:6px}.cv-reject-btn{padding:6px 14px;border-radius:8px;border:none;background:#fee2e2;font-size:12px;font-weight:600;color:#dc2626;cursor:pointer;transition:background-color .15s;white-space:nowrap}.cv-reject-btn:hover:not(:disabled){background:#fecaca}.cv-reject-btn:disabled{opacity:.4;cursor:not-allowed}.cv-grade-inline{display:flex;align-items:center;gap:6px}.cv-grade-select{padding:5px 8px;border:1.5px solid #e5e7eb;border-radius:8px;font-size:12px;color:#374151;background:#fff}.cv-confirm-btn{padding:5px 12px;border-radius:8px;border:none;background:#3b82f6;color:#fff;font-size:12px;font-weight:600;cursor:pointer;transition:background-color .15s;white-space:nowrap}.cv-confirm-btn:hover:not(:disabled){background:#2563eb}.cv-confirm-btn:disabled{opacity:.4;cursor:not-allowed}.cv-cancel-btn-sm{padding:5px 10px;border-radius:8px;border:1.5px solid #e5e7eb;background:#fff;font-size:12px;color:#6b7280;cursor:pointer;white-space:nowrap}.objection-detail-container{min-height:100vh;background-color:#f5f5f5;display:flex;flex-direction:column}.objection-detail-header{display:flex;align-items:center;gap:12px;padding:16px 20px;background:#fff;border-bottom:1px solid #e5e7eb;position:sticky;top:0;z-index:10}.back-arrow{font-size:20px;cursor:pointer;color:#374151}.page-title{font-size:18px;font-weight:600;color:#111827;margin:0}.objection-detail-main{flex:1;padding:16px;display:flex;flex-direction:column;gap:16px;max-width:720px;width:100%;margin:0 auto}.penalty-info-card{background:#fff;border-radius:12px;padding:20px;box-shadow:0 1px 4px #00000014}.penalty-card-header{display:flex;align-items:center;flex-wrap:nowrap;gap:8px;margin-bottom:12px}.badge{padding:4px 10px;border-radius:20px;font-size:12px;font-weight:600}.penalty-badge{background:#fef3c7;color:#92400e}.campaign-name{font-size:16px;font-weight:600;color:#111827;margin:0 0 12px}.penalty-meta{display:flex;flex-direction:column;gap:8px}.meta-row{display:flex;gap:12px;font-size:14px}.meta-label{color:#6b7280;min-width:80px;flex-shrink:0}.meta-value{color:#111827}.messages-section{background:#fff;border-radius:12px;padding:20px;box-shadow:0 1px 4px #00000014}.section-title{font-size:15px;font-weight:600;color:#374151;margin:0 0 16px}.empty-messages{color:#9ca3af;font-size:14px;text-align:center;padding:24px 0}.message-list{display:flex;flex-direction:column;gap:12px}.message-bubble{width:100%;padding:12px 16px;border-radius:8px;font-size:14px;border-left:3px solid transparent;box-sizing:border-box}.user-message{background:#f0f7ff;border-left-color:#1976d2}.admin-message{background:#f0fdf4;border-left-color:#388e3c}.message-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.message-sender{font-size:11px;font-weight:600;color:#6b7280}.message-content{color:#111827;white-space:pre-wrap;line-height:1.5;margin:0}.message-time{font-size:11px;color:#9ca3af}.decision-form-card{background:#fff;border-radius:12px;padding:20px;box-shadow:0 1px 4px #00000014}.decision-form-card h3{font-size:15px;font-weight:600;color:#374151;margin:0 0 12px}.response-textarea{width:100%;box-sizing:border-box;padding:12px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;resize:vertical;outline:none;font-family:inherit}.response-textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.submit-error{color:#ef4444;font-size:13px;margin-top:8px}.loading-container,.error-container{text-align:center;padding:40px 20px;color:#6b7280}.objections-filter-row{display:flex;align-items:center;gap:8px;margin-bottom:16px;flex-wrap:wrap}.objections-empty{display:flex;flex-direction:column;align-items:center;gap:12px;padding:60px 20px;color:#9ca3af}.objections-empty-icon{font-size:48px}.objections-list{display:flex;flex-direction:column;gap:8px}.objection-row{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;background:#fff;border:1px solid #e5e7eb;border-radius:12px;cursor:pointer;transition:background .1s,border-color .1s;text-align:left;width:100%;gap:12px}.objection-row:hover{background:#f9fafb;border-color:#d1d5db}.objection-row-left{display:flex;align-items:center;gap:12px;flex:1;min-width:0}.objection-row-title{font-size:14px;font-weight:500;color:#374151;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.objection-row-right{display:flex;align-items:center;gap:8px;flex-shrink:0}.objection-row-date{font-size:12px;color:#9ca3af}.objection-row-arrow{font-size:18px;color:#9ca3af}.penalty-manual-page{display:flex;flex-direction:column;gap:12px}.penalty-manual-hero{display:flex;align-items:flex-start;gap:16px;background:linear-gradient(135deg,#eff6ff,#fff 65%)}.penalty-manual-hero-icon{width:52px;height:52px;border-radius:14px;background:#dbeafe;color:#1d4ed8;display:flex;align-items:center;justify-content:center;font-size:26px;flex-shrink:0}.penalty-manual-hero-content h2{margin:0 0 8px;font-size:18px;color:#111827}.penalty-manual-hero-content p{margin:0;color:#4b5563;line-height:1.6}.penalty-manual-form{display:flex;flex-direction:column;gap:16px}.penalty-manual-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.penalty-manual-field{display:flex;flex-direction:column;gap:8px}.penalty-manual-field label{font-size:14px;font-weight:600;color:#374151}.penalty-manual-field input,.penalty-manual-field select,.penalty-manual-field textarea{width:100%;padding:12px 14px;border:1px solid #d1d5db;border-radius:10px;background:#fff;color:#111827;font-size:14px;font-family:inherit;outline:none;transition:border-color .15s,box-shadow .15s}.penalty-manual-field input:focus,.penalty-manual-field select:focus,.penalty-manual-field textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61f}.penalty-manual-field textarea{min-height:120px;resize:vertical}.penalty-manual-user-search{position:relative;display:flex;flex-direction:column;gap:8px}.penalty-manual-user-search-input-wrap{position:relative}.penalty-manual-user-search-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:#64748b;font-size:18px}.penalty-manual-user-search-input-wrap input{padding-left:42px}.penalty-manual-user-search-hint,.penalty-manual-user-search-empty{font-size:13px;color:#64748b}.penalty-manual-user-search-error{font-size:13px;color:#dc2626}.penalty-manual-user-candidates{border:1px solid #dbe2ea;border-radius:12px;overflow:hidden;background:#fff;box-shadow:0 10px 24px #0f172a14}.penalty-manual-user-candidate{width:100%;border:none;background:#fff;text-align:left;padding:14px 16px;display:flex;flex-direction:column;gap:8px;cursor:pointer;transition:background-color .15s}.penalty-manual-user-candidate+.penalty-manual-user-candidate{border-top:1px solid #eef2f7}.penalty-manual-user-candidate:hover{background:#f8fbff}.penalty-manual-user-candidate-main,.penalty-manual-user-candidate-sub{display:flex;align-items:center;justify-content:space-between;gap:10px}.penalty-manual-user-candidate-name{font-size:14px;font-weight:600;color:#111827}.penalty-manual-user-candidate-sub{font-size:13px;color:#64748b}.penalty-manual-user-candidate-id{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:12px}.penalty-manual-selected-user{border:1px solid #dbeafe;border-radius:12px;background:#f8fbff;padding:14px 16px}.penalty-manual-selected-campaign{border-color:#d1fae5;background:#f7fff9}.penalty-manual-selected-user-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.penalty-manual-selected-user-name-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:6px}.penalty-manual-selected-user-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:13px;color:#475569}.penalty-manual-selected-user-id{margin-top:6px;font-size:12px;color:#64748b;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.penalty-manual-reason-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:12px 14px;border-radius:10px;background:#f8fafc;border:1px solid #e5e7eb}.penalty-manual-reason-text{color:#334155;font-size:14px;font-weight:500}.penalty-manual-action-bar{display:flex;gap:10px}.penalty-manual-guide-title{display:flex;align-items:center;gap:8px;margin-bottom:10px;color:#1f2937;font-size:15px;font-weight:600}.penalty-manual-guide-list{margin:0;padding-left:20px;color:#4b5563;line-height:1.7}.penalty-manual-result-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.penalty-manual-result-header h2{margin:0;font-size:16px;color:#111827}.penalty-manual-result-grid{display:flex;flex-direction:column;gap:10px}.penalty-manual-result-row{display:grid;grid-template-columns:132px minmax(0,1fr);gap:12px;align-items:start}.penalty-manual-result-label{color:#6b7280;font-size:13px;font-weight:600}.penalty-manual-result-value{color:#111827;font-size:14px;line-height:1.6;word-break:break-word}.penalty-manual-result-value.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:13px}@media(max-width:767px){.penalty-manual-form-grid{grid-template-columns:1fr}.penalty-manual-action-bar{flex-direction:column}.penalty-manual-selected-user-header,.penalty-manual-user-candidate-main,.penalty-manual-user-candidate-sub{flex-direction:column;align-items:flex-start}.penalty-manual-result-row{grid-template-columns:1fr;gap:4px}}.campaign-manual-page{display:flex;flex-direction:column;gap:12px}.campaign-manual-hero{display:flex;align-items:flex-start;gap:16px;background:linear-gradient(135deg,#ecfeff,#fff 68%)}.campaign-manual-hero-icon{width:52px;height:52px;border-radius:14px;background:#cffafe;color:#0f766e;display:flex;align-items:center;justify-content:center;font-size:26px;flex-shrink:0}.campaign-manual-hero-content h2{margin:0 0 8px;font-size:18px;color:#111827}.campaign-manual-hero-content p{margin:0;color:#4b5563;line-height:1.6}.campaign-manual-search-card,.campaign-manual-actions-card,.campaign-manual-guide,.campaign-manual-result{display:flex;flex-direction:column;gap:16px}.campaign-manual-field{display:flex;flex-direction:column;gap:8px}.campaign-manual-field label{font-size:14px;font-weight:600;color:#374151}.campaign-manual-search{display:flex;flex-direction:column;gap:8px}.campaign-manual-search-input-wrap{position:relative}.campaign-manual-search-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:#64748b;font-size:18px}.campaign-manual-search-input-wrap input{width:100%;padding:12px 14px 12px 42px;border:1px solid #d1d5db;border-radius:10px;background:#fff;color:#111827;font-size:14px;font-family:inherit;outline:none;box-sizing:border-box;transition:border-color .15s,box-shadow .15s}.campaign-manual-search-input-wrap input:focus{border-color:#14b8a6;box-shadow:0 0 0 3px #14b8a61f}.campaign-manual-search-hint,.campaign-manual-search-empty{font-size:13px;color:#64748b}.campaign-manual-search-error{font-size:13px;color:#dc2626}.campaign-manual-candidates{border:1px solid #dbe2ea;border-radius:12px;overflow:hidden;background:#fff;box-shadow:0 10px 24px #0f172a14}.campaign-manual-candidate{width:100%;border:none;background:#fff;text-align:left;padding:14px 16px;display:flex;flex-direction:column;gap:8px;cursor:pointer;transition:background-color .15s}.campaign-manual-candidate+.campaign-manual-candidate{border-top:1px solid #eef2f7}.campaign-manual-candidate:hover{background:#f5fffe}.campaign-manual-candidate-main,.campaign-manual-candidate-sub{display:flex;align-items:center;justify-content:space-between;gap:10px}.campaign-manual-candidate-name{font-size:14px;font-weight:600;color:#111827}.campaign-manual-candidate-sub{font-size:13px;color:#64748b}.campaign-manual-candidate-id,.campaign-manual-selected-id,.campaign-manual-result-value.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:12px}.campaign-manual-selected{border:1px solid #ccfbf1;border-radius:12px;background:#f0fdfa;padding:16px;display:flex;flex-direction:column;gap:14px}.campaign-manual-selected-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.campaign-manual-selected-title-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:6px}.campaign-manual-selected-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:13px;color:#475569}.campaign-manual-selected-dates{display:flex;flex-direction:column;gap:8px}.campaign-manual-date-row,.campaign-manual-result-row{display:grid;grid-template-columns:110px minmax(0,1fr);gap:12px;align-items:start}.campaign-manual-date-label,.campaign-manual-result-label{font-size:13px;font-weight:600;color:#6b7280}.campaign-manual-date-value,.campaign-manual-result-value{font-size:14px;color:#111827;line-height:1.6;word-break:break-word}.campaign-manual-guide-title{display:flex;align-items:center;gap:8px;color:#1f2937;font-size:15px;font-weight:600}.campaign-manual-actions-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.campaign-manual-action-btn{border:1px solid #d1fae5;border-radius:12px;background:#fff;padding:14px 16px;display:flex;flex-direction:column;gap:8px;text-align:left;cursor:pointer;transition:border-color .15s,transform .15s,box-shadow .15s}.campaign-manual-action-btn:hover:not(:disabled){border-color:#14b8a6;box-shadow:0 10px 18px #14b8a614;transform:translateY(-1px)}.campaign-manual-action-btn:disabled{cursor:not-allowed;opacity:.6}.campaign-manual-action-btn.complete{border-color:#fed7aa;background:#fff7ed}.campaign-manual-action-label{font-size:14px;font-weight:700;color:#111827}.campaign-manual-action-desc{font-size:13px;color:#475569;line-height:1.5}.campaign-manual-guide-list{margin:0;padding-left:20px;color:#4b5563;line-height:1.7}.campaign-manual-result-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.campaign-manual-result-header h2{margin:0;font-size:16px;color:#111827}.campaign-manual-result-grid{display:flex;flex-direction:column;gap:10px}@media(max-width:767px){.campaign-manual-selected-header,.campaign-manual-candidate-main,.campaign-manual-candidate-sub{flex-direction:column;align-items:flex-start}.campaign-manual-actions-grid{grid-template-columns:1fr}.campaign-manual-date-row,.campaign-manual-result-row{grid-template-columns:1fr;gap:4px}}.user-list-page{min-height:100vh;background:#f5f5f5;display:flex;flex-direction:column}.user-list-header{display:flex;align-items:center;gap:12px;padding:16px 20px;background:#fff;border-bottom:1px solid #e5e7eb;position:sticky;top:0;z-index:10}.user-list-back{font-size:24px;cursor:pointer;color:#374151}.user-list-title{font-size:18px;font-weight:700;color:#111827;margin:0}.user-list-tabs{display:flex;background:#fff;border-bottom:1px solid #e5e7eb}.user-list-tab{flex:1;padding:12px 0;background:none;border:none;font-size:14px;font-weight:500;color:#6b7280;cursor:pointer;border-bottom:2px solid transparent;transition:color .2s,border-color .2s}.user-list-tab.active{color:#2563eb;border-bottom-color:#2563eb;font-weight:700}.user-list-search-wrap{padding:12px 16px;background:#fff;border-bottom:1px solid #e5e7eb}.user-list-search-form{display:flex;gap:8px;align-items:center}.user-list-search-input{flex:1;height:40px;padding:0 12px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;outline:none}.user-list-search-input:focus{border-color:#2563eb}.user-list-search-btn{height:40px;width:40px;display:flex;align-items:center;justify-content:center;background:#2563eb;color:#fff;border:none;border-radius:8px;font-size:18px;cursor:pointer}.user-list-count{padding:8px 16px;font-size:13px;color:#6b7280;background:#f5f5f5}.user-list-main{flex:1;padding:12px 16px;display:flex;flex-direction:column;gap:10px}.user-list-error{display:flex;flex-direction:column;align-items:center;gap:10px;padding:40px 20px;color:#dc2626;font-size:14px}.user-list-error p{margin:0}.user-list-retry-btn{padding:6px 16px;border-radius:8px;background:#fee2e2;color:#dc2626;border:none;font-size:13px;font-weight:600;cursor:pointer}.user-list-retry-btn:hover{background:#fecaca}.user-list-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 0;color:#9ca3af;gap:12px}.user-list-empty-icon{font-size:48px}.user-list-empty p{font-size:14px;margin:0}.user-list-tab.withdrawn-tab.active{color:#6b7280;border-bottom-color:#6b7280}.user-card{background:#fff;border-radius:12px;padding:16px;cursor:pointer;box-shadow:0 1px 3px #0000000f;transition:box-shadow .2s;border-left:3px solid transparent}.user-card:active{box-shadow:0 2px 8px #0000001f}.user-card.inactive{border-left-color:#f59e0b;opacity:.85}.user-card.withdrawn{border-left-color:#9ca3af;opacity:.7}.user-card.withdrawn .user-card-nickname{color:#6b7280}.user-card-top{display:flex;align-items:center;margin-bottom:6px}.user-card-name-row{display:flex;align-items:center;gap:8px;min-width:0;flex:1}.user-card-avatar{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden;font-size:14px;font-weight:700;color:#fff}.user-card-avatar.influencer{background:linear-gradient(135deg,#3b82f6,#2563eb)}.user-card-avatar.advertiser{background:linear-gradient(135deg,#8b5cf6,#7c3aed)}.user-card-avatar img{width:100%;height:100%;object-fit:cover}.user-card-nickname{font-size:15px;font-weight:700;color:#111827}.user-card-email{font-size:13px;color:#6b7280;margin-bottom:2px}.user-card-realname{font-size:13px;color:#9ca3af;margin-bottom:2px}.user-card-date{font-size:12px;color:#9ca3af;margin-top:4px}.user-list-sentinel{height:1px}.user-list-loading{text-align:center;padding:16px;font-size:14px;color:#9ca3af}.user-detail-page{min-height:100vh;background:#f5f5f5;display:flex;flex-direction:column}.user-detail-header{display:flex;align-items:center;gap:12px;padding:16px 20px;background:#fff;border-bottom:1px solid #e5e7eb;position:sticky;top:0;z-index:10}.user-detail-back{font-size:24px;cursor:pointer;color:#374151}.user-detail-title{font-size:18px;font-weight:700;color:#111827;margin:0}.user-detail-loading,.user-detail-error{display:flex;align-items:center;justify-content:center;padding:60px 20px;font-size:14px;color:#9ca3af}.user-detail-main{flex:1;padding:16px;display:flex;flex-direction:column;gap:12px;max-width:600px;width:100%;margin:0 auto}.user-detail-card{background:#fff;border-radius:12px;padding:16px;box-shadow:0 1px 3px #0000000f}.user-detail-profile-row{display:flex;align-items:center;gap:16px}.user-detail-avatar{width:56px;height:56px;border-radius:50%;background:#f3f4f6;display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0}.user-detail-avatar img{width:100%;height:100%;object-fit:cover}.user-detail-avatar.influencer{background:linear-gradient(135deg,#3b82f6,#2563eb)}.user-detail-avatar.advertiser{background:linear-gradient(135deg,#8b5cf6,#7c3aed)}.user-detail-avatar-initial{font-size:22px;font-weight:700;color:#fff}.user-detail-profile-info{display:flex;flex-direction:column;gap:4px}.user-detail-name-row{display:flex;align-items:center;gap:8px}.user-detail-nickname{font-size:16px;font-weight:700;color:#111827}.user-detail-channel-num{font-size:12px;color:#9ca3af}.user-detail-actions{margin-top:14px;display:flex;flex-direction:column;gap:8px}.deactivate-form{display:flex;flex-direction:column;gap:8px}.deactivate-reason-input{width:100%;height:38px;padding:0 12px;border:1px solid #d1d5db;border-radius:8px;font-size:13px;outline:none;box-sizing:border-box}.deactivate-reason-input:focus{border-color:#f59e0b}.deactivate-form-btns{display:flex;gap:8px}.user-detail-deactivated-info{margin-top:10px;padding:8px 12px;background:#f59e0b14;border-radius:8px;font-size:12px;color:#92400e}.deactivated-label{font-weight:600;margin-right:4px}.user-detail-section-title{font-size:14px;font-weight:700;color:#374151;margin:0 0 12px;padding-bottom:8px;border-bottom:1px solid #f3f4f6}.user-detail-section-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.user-detail-section-header .user-detail-section-title{margin-bottom:0;flex:1}.penalty-release-btn{flex-shrink:0}.user-detail-info-list{display:flex;flex-direction:column;gap:10px}.user-detail-info-row{display:flex;align-items:flex-start;gap:8px}.user-detail-info-label{flex-shrink:0;width:90px;font-size:13px;color:#6b7280}.user-detail-info-value{flex:1;font-size:13px;color:#111827;word-break:break-all}.user-detail-info-suffix{font-size:12px;color:#9ca3af}.user-detail-sns-row{display:flex;align-items:flex-start;gap:8px}.user-detail-sns-label{flex-shrink:0;width:90px;font-size:13px;color:#6b7280}.user-detail-sns-value{flex:1;display:flex;flex-direction:row;align-items:center;flex-wrap:wrap;gap:6px;font-size:13px;color:#111827}.sns-grade-badge{display:inline-flex;align-items:center;padding:6px 12px;border-radius:20px;font-size:13px;font-weight:600;white-space:nowrap}.sns-grade-badge.grade-startmon{background:#9ca3af33;color:#4b5563}.sns-grade-badge.grade-growmon{background:#34d39926;color:#065f46}.sns-grade-badge.grade-activemon{background:#42a5f526;color:#1976d2}.sns-grade-badge.grade-heroemon{background:#a78bfa33;color:#6d28d9}.sns-grade-badge.grade-kingmon{background:#fbbf2433;color:#b45309}.user-detail-penalty-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.penalty-stat-item{display:flex;flex-direction:column;align-items:center;padding:10px 6px;background:#f9fafb;border-radius:8px;gap:4px}.penalty-stat-value{font-size:20px;font-weight:700;color:#111827}.penalty-stat-label{font-size:11px;color:#6b7280}.penalty-stat-item.confirmed .penalty-stat-value{color:#d32f2f}.penalty-stat-item.under-review .penalty-stat-value{color:#1976d2}.penalty-stat-item.resolved .penalty-stat-value{color:#388e3c}.user-detail-latest-penalty{margin-top:14px;padding:14px;border-radius:10px;background:#f9fafb;border:1px solid #e5e7eb}.user-detail-latest-penalty-header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.user-detail-latest-penalty-title{font-size:13px;font-weight:700;color:#111827}*{box-sizing:border-box}#root{width:100%;min-height:100vh}
