.rr-app-container{font-family:Roboto,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;color:#1a2027;width:100%;box-sizing:border-box}.rr-app-container *{box-sizing:border-box}.rr-app-container .rr-topbar{display:flex;align-items:center;justify-content:space-between;background:#fff;border:1px solid #E3E7EC;border-radius:12px;padding:16px 20px;margin-bottom:20px;box-shadow:0 2px 6px #00000008;flex-wrap:wrap;gap:16px}.rr-app-container .rr-topbar-left{display:flex;align-items:center;gap:14px}.rr-app-container .rr-page-title{font-size:19px;font-weight:700;color:#0f172a;letter-spacing:-.01em}.rr-app-container .rr-page-sub{font-size:13px;color:#64748b;margin-top:2px}.rr-app-container .rr-topbar-right{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.rr-app-container .rr-role-chip{display:flex;align-items:center;gap:8px;background:#f8fafc;border:1px solid #E2E8F0;padding:6px 12px;border-radius:8px;font-size:13px;font-weight:600;color:#475569}.rr-app-container .rr-role-select{border:none;background:transparent;font-weight:700;color:#1e293b;font-size:13px;outline:none;cursor:pointer}.rr-app-container .rr-nav-tabs{display:flex;background:#f1f5f9;padding:4px;border-radius:8px;gap:4px}.rr-app-container .rr-nav-tab{border:none;background:transparent;padding:7px 16px;border-radius:6px;font-size:13px;font-weight:600;color:#64748b;cursor:pointer;transition:all .15s ease}.rr-app-container .rr-nav-tab.active{background:#fff;color:#1976d2;box-shadow:0 1px 3px #00000014}.rr-app-container .btn,.rr-drawer .btn,.rr-modal .btn{display:inline-flex;align-items:center;gap:7px;border-radius:6px;font-weight:600;font-size:13px;text-transform:uppercase;letter-spacing:.03em;cursor:pointer;border:none;padding:9px 18px;transition:all .15s ease}.rr-app-container .btn-primary,.rr-drawer .btn-primary,.rr-modal .btn-primary{background:#1976d2;color:#fff;box-shadow:0 2px 4px #1976d259}.rr-app-container .btn-primary:hover,.rr-drawer .btn-primary:hover,.rr-modal .btn-primary:hover{background:#1565c0}.rr-app-container .btn-outline,.rr-drawer .btn-outline,.rr-modal .btn-outline{background:#fff;border:1px solid #1976D2;color:#1976d2}.rr-app-container .btn-outline:hover{background:#e8f0fe}.rr-app-container .btn-plain,.rr-drawer .btn-plain,.rr-modal .btn-plain{background:#fff;border:1px solid #D0D5DD;color:#49566b}.rr-app-container .btn-plain:hover{background:#f8fafc}.rr-app-container .btn-danger-outline,.rr-drawer .btn-danger-outline{background:#fff;border:1px solid #D32F2F;color:#d32f2f}.rr-app-container .btn-danger-outline:hover,.rr-drawer .btn-danger-outline:hover{background:#fef2f2}.rr-app-container .btn-pink-outline,.rr-drawer .btn-pink-outline{background:#fff;border:1px solid #EC407A;color:#c2185b}.rr-app-container .btn-pink-outline:hover,.rr-drawer .btn-pink-outline:hover{background:#fff1f2}.rr-app-container .btn-chip{background:#e8f0fe;color:#1976d2;border:none;padding:6px 14px;border-radius:6px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.03em;cursor:pointer;transition:background .15s ease}.rr-app-container .btn-chip:hover{background:#d2e3fc}.rr-app-container .filterbar{background:#fff;border:1px solid #E2E6F0;border-radius:12px;padding:16px 18px;margin-bottom:16px;display:flex;gap:12px;flex-wrap:wrap;align-items:center}.rr-app-container .search-wrap{position:relative;flex:1;min-width:220px}.rr-app-container .search-wrap svg{position:absolute;left:12px;top:11px;color:#94a3b8}.rr-app-container .search-wrap input{width:100%;box-sizing:border-box;padding:9px 12px 9px 34px;border:1px solid #D8DEE9;border-radius:8px;font-size:13.5px;outline:none;color:#1a2027}.rr-app-container .search-wrap input:focus{border-color:#1976d2}.rr-app-container .filterbar select,.rr-app-container .filterbar input[type=date]{padding:9px 12px;border:1px solid #D8DEE9;border-radius:8px;font-size:13.5px;background:#fff;cursor:pointer;color:#334155;outline:none}.rr-app-container .filterbar select:focus,.rr-app-container .filterbar input[type=date]:focus{border-color:#1976d2}.rr-app-container .card{background:#fff;border:1px solid #E2E6F0;border-radius:12px;overflow:hidden;box-shadow:0 1px 3px #00000005}.rr-app-container .table-scroll{overflow-x:auto}.rr-app-container table{width:100%;border-collapse:collapse;font-size:13.5px}.rr-app-container thead tr{background:#f8fafc;border-bottom:1px solid #E2E6F0}.rr-app-container th{text-align:left;padding:12px 16px;font-size:11px;color:#64748b;text-transform:uppercase;letter-spacing:.05em;font-weight:700}.rr-app-container th.right,.rr-app-container td.right{text-align:right}.rr-app-container tbody tr{border-bottom:1px solid #EEF1F6;transition:background .1s ease}.rr-app-container tbody tr:hover{background:#f8fafc}.rr-app-container tbody tr:last-child{border-bottom:none}.rr-app-container td{padding:13px 16px;vertical-align:middle;color:#1e293b}.rr-app-container .row-clickable{cursor:pointer}.rr-app-container .empty-state{padding:60px 20px;text-align:center;color:#94a3b8;font-size:14px}.rr-app-container .reward-cell{display:flex;align-items:center;gap:12px}.rr-app-container .reward-thumb{width:40px;height:40px;border-radius:8px;background:#e8f0fe;color:#1976d2;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:15px;flex-shrink:0;overflow:hidden;border:1px solid #D2E3FC}.rr-app-container .reward-thumb img{width:100%;height:100%;object-fit:cover}.rr-app-container .reward-name{font-weight:500;color:#0f172a}.rr-app-container .reward-id{font-size:12px;color:#94a3b8;margin-top:1px}.rr-app-container .sub-line{font-size:12px;color:#64748b;margin-top:2px}.rr-app-container .badge{display:inline-flex;align-items:center;gap:6px;font-weight:500}.rr-app-container .dot{width:8px;height:8px;border-radius:50%}.rr-app-container .status-pill,.rr-drawer .status-pill,.rr-modal .status-pill{font-size:11.5px;font-weight:700;padding:4px 10px;border-radius:999px;display:inline-block;min-width:76px;text-align:center}.rr-app-container .icon-btn{width:32px;height:32px;border-radius:7px;border:1px solid #D8DEE9;background:#fff;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;color:#475569;transition:all .15s ease}.rr-app-container .icon-btn:hover{background:#f1f5f9;border-color:#cbd5e1;color:#0f172a}.rr-app-container .row-actions{display:flex;gap:8px;justify-content:flex-end}.rr-app-container .callout{background:#e8f0fe;border:1px solid #90CAF9;border-radius:12px;padding:14px 18px;margin-bottom:18px;font-size:13.5px;color:#1565c0;display:flex;align-items:center;gap:10px}.rr-app-container .count-label{font-size:13.5px;color:#64748b;font-weight:600}.rr-app-container .actions-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;flex-wrap:wrap;gap:12px}.rr-app-container .actions-row .btns{display:flex;gap:10px}.rr-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a73;z-index:1400;display:flex;justify-content:flex-end;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:rrFadeIn .15s ease}.rr-overlay.center{align-items:center;justify-content:center}.rr-drawer{width:580px;max-width:95vw;height:100%;background:#fff;display:flex;flex-direction:column;box-shadow:-8px 0 30px #0f172a2e;animation:rrSlideInRight .22s cubic-bezier(.16,1,.3,1);font-family:Roboto,Helvetica,Arial,sans-serif;color:#1a2027}.rr-drawer.narrow{width:540px}.rr-drawer-head{padding:20px 26px;border-bottom:1px solid #E2E6F0;display:flex;align-items:center;justify-content:space-between;flex-shrink:0;background:#f8fafc}.rr-drawer-title{font-size:17px;font-weight:800;color:#0f172a}.rr-drawer-sub{font-size:12.5px;color:#64748b;margin-top:2px}.rr-drawer-close{width:34px;height:34px;border-radius:8px;border:none;background:#e2e8f0;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#475569;transition:all .15s ease}.rr-drawer-close:hover{background:#cbd5e1;color:#0f172a}.rr-drawer-body{padding:22px 26px;overflow-y:auto;flex:1;display:flex;flex-direction:column;gap:18px}.rr-drawer-foot{padding:16px 26px;border-top:1px solid #E2E6F0;display:flex;gap:10px;justify-content:flex-end;flex-shrink:0;background:#f8fafc}.rr-drawer .field-label,.rr-modal .field-label{font-size:12.5px;font-weight:700;color:#334155;margin-bottom:6px}.rr-drawer .field-row,.rr-modal .field-row{display:flex;gap:14px}.rr-drawer .field-row>div,.rr-modal .field-row>div{flex:1}.rr-drawer input[type=text],.rr-drawer input[type=number],.rr-drawer input[type=date],.rr-drawer textarea,.rr-drawer select.field,.rr-modal input[type=text],.rr-modal input[type=number],.rr-modal input[type=date],.rr-modal select.field{width:100%;box-sizing:border-box;padding:10px 12px;border:1px solid #D8DEE9;border-radius:8px;font-size:13.5px;outline:none;font-family:inherit;color:#1e293b;background:#fff;transition:border-color .15s ease}.rr-drawer input:focus,.rr-drawer textarea:focus,.rr-drawer select:focus,.rr-modal input:focus,.rr-modal select:focus{border-color:#1976d2}.rr-drawer textarea{resize:vertical}.rr-drawer .toggle-row{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;background:#f8fafc;border-radius:8px;border:1px solid #E2E8F0}.rr-drawer .toggle-track{width:44px;height:24px;border-radius:12px;position:relative;cursor:pointer;flex-shrink:0;background:#cbd5e1;transition:background .15s ease}.rr-drawer .toggle-track.on{background:#1976d2}.rr-drawer .toggle-thumb{position:absolute;top:2px;left:2px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0000004d;transition:left .15s ease}.rr-drawer .toggle-track.on .toggle-thumb{left:22px}.rr-drawer .who-row{display:flex;gap:8px}.rr-drawer .who-btn{flex:1;padding:9px;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;border:1px solid #D8DEE9;background:#fff;color:#334155;transition:all .15s ease}.rr-drawer .who-btn.active{background:#1976d2;border-color:#1976d2;color:#fff;box-shadow:0 2px 4px #1976d240}.rr-drawer .image-drop{width:100%;height:150px;border-radius:12px;border:2px dashed #D8DEE9;background:#f8fafc;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;cursor:pointer;color:#64748b;text-align:center;position:relative;overflow:hidden;transition:all .15s ease}.rr-drawer .image-drop:hover,.rr-drawer .image-drop.over{border-color:#1976d2;background:#e8f0fe;color:#1976d2}.rr-drawer .image-drop img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.rr-drawer .image-drop .cap{font-size:13px;font-weight:600}.rr-drawer .image-drop .sub{font-size:11px}.rr-drawer .rte{border:1px solid #D8DEE9;border-radius:8px;overflow:hidden;background:#fff}.rr-drawer .rte-toolbar{display:flex;gap:4px;padding:7px 9px;background:#f8fafc;border-bottom:1px solid #E2E6F0}.rr-drawer .rte-toolbar button{width:30px;height:28px;border-radius:5px;border:1px solid #D8DEE9;background:#fff;cursor:pointer;font-size:12px;color:#334155}.rr-drawer .rte-toolbar button:hover{background:#e2e8f0}.rr-drawer .rte-toolbar button.wide{width:auto;padding:0 10px}.rr-drawer .rte-editor{min-height:110px;padding:12px;font-size:13.5px;line-height:1.6;outline:none;color:#1e293b}.rr-drawer .rte-editor p{margin:0 0 8px}.rr-drawer .detail-section-title{font-size:11.5px;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.05em;margin-bottom:10px}.rr-drawer .detail-grid{background:#f8fafc;border:1px solid #EEF1F6;border-radius:10px;padding:14px 16px;display:grid;grid-template-columns:1fr 1fr;gap:14px;font-size:13px}.rr-drawer .detail-grid .k{color:#64748b;font-size:11.5px}.rr-drawer .detail-grid .v{font-weight:600;color:#0f172a;margin-top:2px}.rr-drawer .net-box{margin-top:10px;background:#e8f0fe;border:1px solid #90CAF9;border-radius:10px;padding:14px 16px;display:flex;align-items:center;justify-content:space-between}.rr-drawer .net-box .label{font-size:13.5px;font-weight:700;color:#1565c0}.rr-drawer .net-box .value{font-size:17px;font-weight:800;color:#1565c0}.rr-drawer .net-box input{width:130px;text-align:right;padding:7px 10px;border:1px solid #B9CCFF;border-radius:7px;font-size:15px;font-weight:700;color:#1565c0;background:#fff}.rr-drawer .timeline-item{display:flex;gap:14px;padding-bottom:18px}.rr-drawer .timeline-rail{display:flex;flex-direction:column;align-items:center}.rr-drawer .timeline-dot{width:10px;height:10px;border-radius:50%;background:#1976d2;flex-shrink:0;margin-top:4px}.rr-drawer .timeline-line{width:2px;flex:1;background:#e2e6f0;margin-top:4px}.rr-drawer .timeline-action{font-size:13.5px;font-weight:700;color:#0f172a}.rr-drawer .timeline-meta{font-size:12px;color:#64748b;margin-top:2px}.rr-drawer .timeline-remark{font-size:13px;color:#334155;margin-top:6px;background:#f8fafc;border:1px solid #E2E8F0;padding:8px 12px;border-radius:8px}.rr-drawer .readonly-note{padding:16px 26px;border-top:1px solid #E2E6F0;flex-shrink:0;text-align:center;font-size:13px;font-weight:500;color:#64748b;background:#f8fafc}.rr-modal{width:440px;max-width:92vw;background:#fff;border-radius:14px;overflow:hidden;box-shadow:0 20px 50px #0f172a40;animation:rrFadeScaleIn .18s cubic-bezier(.16,1,.3,1);font-family:Roboto,Helvetica,Arial,sans-serif;color:#1a2027}.rr-modal-head{padding:18px 24px;border-bottom:1px solid #E2E6F0;font-size:16px;font-weight:800;background:#f8fafc}.rr-modal-body{padding:22px 24px;display:flex;flex-direction:column;gap:16px}.rr-modal-foot{padding:16px 24px;border-top:1px solid #E2E6F0;display:flex;gap:10px;justify-content:flex-end;background:#f8fafc}.rr-toast{position:fixed;bottom:28px;right:32px;background:#0f172a;color:#fff;font-size:13.5px;font-weight:600;padding:14px 22px;border-radius:10px;box-shadow:0 10px 30px #00000047;z-index:2000;animation:rrToastIn .2s ease;font-family:Roboto,Helvetica,Arial,sans-serif;display:flex;align-items:center;gap:10px}@keyframes rrFadeIn{0%{opacity:0}to{opacity:1}}@keyframes rrSlideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes rrFadeScaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes rrToastIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes rrSpin{to{transform:rotate(360deg)}}.status-spinner{display:inline-block;width:15px;height:15px;border:2px solid #E2E8F0;border-top-color:#3b82f6;border-radius:50%;animation:rrSpin .6s linear infinite}
