@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=Plus+Jakarta+Sans:wght@400;500;600;700;800&display=swap";:root{--primary:#1d4ed8;--primary-hover:#1e40af;--primary-light:#dbeafe;--primary-mid:#bfdbfe;--secondary:#0ea5e9;--secondary-hover:#0284c7;--bg-color:#f0f4ff;--surface:#fff;--surface-2:#f8faff;--surface-3:#eff4ff;--text-main:#0f1b3d;--text-sub:#1e3a5f;--text-muted:#6b7ea0;--text-light:#a0aec0;--border:#d1deff;--border-strong:#bfcfef;--success:#059669;--success-bg:#d1fae5;--warning:#d97706;--warning-bg:#fef3c7;--danger:#dc2626;--danger-bg:#fee2e2;--info:#0ea5e9;--info-bg:#e0f2fe;--font-main:"Plus Jakarta Sans", "Inter", system-ui, sans-serif;--shadow-xs:0 1px 2px #1d4ed80a;--shadow-sm:0 1px 4px #1d4ed80f, 0 1px 2px #1d4ed80a;--shadow-md:0 4px 12px #1d4ed814, 0 2px 4px #1d4ed80d;--shadow-lg:0 12px 32px #1d4ed81f, 0 4px 8px #1d4ed80f;--shadow-primary:0 4px 16px #1d4ed859;--shadow-card:0 2px 8px #1d4ed812, 0 1px 3px #1d4ed80a}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-main);background-color:var(--bg-color);color:var(--text-main);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh}a{color:inherit;text-decoration:none}h1,h2,h3,h4,h5,h6{color:var(--text-main);letter-spacing:-.025em;font-weight:700}.page-title{color:var(--text-main);letter-spacing:-.03em;margin-bottom:.25rem;font-size:1.75rem;font-weight:800}.section-title{color:var(--text-main);font-size:1.125rem;font-weight:700}.text-muted{color:var(--text-muted)}.text-primary{color:var(--primary)}.text-warning{color:var(--warning)}.text-success{color:var(--success)}.text-danger{color:var(--danger)}.main-content{flex:1;width:100%;max-width:1440px;margin:0 auto;padding:32px 40px}.relative-container{position:relative}.bg-blob{filter:blur(100px);z-index:0;opacity:.45;pointer-events:none;border-radius:50%;position:fixed}.blob-1{background:#1d4ed81a;width:500px;height:500px;top:-150px;right:-150px}.blob-2{background:#0ea5e914;width:600px;height:600px;bottom:-250px;left:-250px}.page-container{z-index:1;position:relative}.dashboard-header{justify-content:space-between;align-items:center;margin-bottom:32px;display:flex}.dashboard-cards{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;margin-bottom:36px;display:grid}.card-link{display:block}.modern-card{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-card);border-radius:16px;flex-direction:column;height:100%;transition:all .25s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden}.modern-card:before{content:"";opacity:1;width:100%;height:4px;position:absolute;top:0;left:0}.modern-card:hover{box-shadow:var(--shadow-lg);border-color:var(--primary-mid);transform:translateY(-3px)}.card-primary:before{background:linear-gradient(90deg, var(--primary), var(--secondary))}.card-warning:before{background:linear-gradient(90deg,#f59e0b,#fcd34d)}.card-success:before{background:linear-gradient(90deg,#10b981,#34d399)}.card-danger:before{background:linear-gradient(90deg,#ef4444,#f87171)}.card-icon-wrapper{padding:24px 24px 0}.modern-card .card-icon{box-shadow:var(--shadow-xs);border-radius:12px;padding:12px;font-size:1.875rem}.card-primary .card-icon{background:linear-gradient(135deg, var(--primary-light), var(--primary-mid));color:var(--primary)}.card-warning .card-icon{color:var(--warning);background:linear-gradient(135deg,#fef3c7,#fde68a)}.card-success .card-icon{color:var(--success);background:linear-gradient(135deg,#d1fae5,#a7f3d0)}.card-danger .card-icon{color:var(--danger);background:linear-gradient(135deg,#fee2e2,#fecaca)}.card-content{padding:16px 24px 20px}.card-content p{color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:6px;font-size:.8125rem;font-weight:600}.card-content h3{color:var(--text-main);letter-spacing:-.03em;font-size:2.25rem;font-weight:800;line-height:1}.card-footer{background:var(--surface-2);border-top:1px solid var(--border);color:var(--text-muted);justify-content:space-between;align-items:center;padding:12px 24px;font-size:.8125rem;font-weight:600;transition:all .2s;display:flex}.modern-card:hover .card-footer{color:var(--primary);background:var(--primary-light)}.panel{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-sm);border-radius:16px;max-width:100%;overflow:hidden}.panel-header{border-bottom:1px solid var(--border);padding:20px 24px}.panel-title{color:var(--text-main);font-size:1.125rem;font-weight:700}.panel-body{padding:24px}.modern-table-container,.table-container{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-sm);border-radius:16px;overflow:hidden}.data-table{border-collapse:collapse;text-align:left;width:100%}.data-table th{background:var(--surface-3);text-transform:uppercase;color:var(--text-muted);letter-spacing:.08em;border-bottom:1px solid var(--border);padding:14px 20px;font-size:.7rem;font-weight:700}.data-table td{border-bottom:1px solid var(--border);color:var(--text-main);vertical-align:middle;padding:14px 20px;font-size:.875rem}.data-table tr{transition:background-color .15s}.data-table tr:hover{background-color:var(--surface-3)}.data-table tr:last-child td{border-bottom:none}.empty-state-premium{text-align:center;flex-direction:column;align-items:center;padding:64px 24px;display:flex}.empty-icon-wrapper{background:linear-gradient(135deg, var(--primary-light), var(--primary-mid));width:80px;height:80px;box-shadow:var(--shadow-sm);border-radius:50%;justify-content:center;align-items:center;margin-bottom:20px;display:flex}.empty-icon{color:var(--primary);font-size:2.5rem}.empty-state-premium h4{color:var(--text-main);margin-bottom:8px;font-size:1.125rem;font-weight:700}.empty-state-premium p{color:var(--text-muted);font-size:.9rem}.form-group{margin-bottom:20px}.form-group label{color:var(--text-sub);letter-spacing:.01em;margin-bottom:8px;font-size:.8125rem;font-weight:600;display:block}.form-control{border:1.5px solid var(--border);width:100%;color:var(--text-main);background:var(--surface);border-radius:10px;outline:none;padding:11px 16px;font-family:inherit;font-size:.9rem;transition:all .25s}.form-control:focus{border-color:var(--primary);background:var(--surface);box-shadow:0 0 0 3px #1d4ed81f}.form-control::placeholder{color:var(--text-light)}.form-row{gap:24px;display:flex}.col-half{flex:1}.btn{cursor:pointer;letter-spacing:.01em;border:1.5px solid #0000;border-radius:9px;justify-content:center;align-items:center;gap:8px;padding:10px 20px;font-family:inherit;font-size:.875rem;font-weight:600;transition:all .2s cubic-bezier(.4,0,.2,1);display:inline-flex}.btn:active{transform:scale(.97)}.btn-primary{background:linear-gradient(135deg, var(--primary), #2563eb);color:#fff;box-shadow:var(--shadow-primary);border:none}.btn-primary:hover{background:linear-gradient(135deg, #1e40af, var(--primary));transform:translateY(-1px);box-shadow:0 8px 24px #1d4ed873}.btn-success{background:var(--success);color:#fff;border:none}.btn-success:hover{background:#047857;transform:translateY(-1px)}.btn-warning{background:var(--warning);color:#fff;border:none}.btn-warning:hover{background:#b45309;transform:translateY(-1px)}.btn-danger{background:var(--danger);color:#fff;border:none}.btn-danger:hover{background:#b91c1c;transform:translateY(-1px)}.btn-secondary{background:var(--surface);color:var(--text-sub);border:1.5px solid var(--border)}.btn-secondary:hover{background:var(--surface-3);border-color:var(--primary-mid);color:var(--primary)}.btn-outline-primary{color:var(--primary);border:1.5px solid var(--primary);background:0 0}.btn-outline-primary:hover{background:var(--primary-light)}.btn-sm{border-radius:7px;padding:6px 12px;font-size:.8rem}.badge{letter-spacing:.04em;text-transform:uppercase;border-radius:999px;padding:3px 10px;font-size:.7rem;font-weight:700;display:inline-flex}.badge-success{background:var(--success-bg);color:#065f46}.badge-warning{background:var(--warning-bg);color:#92400e}.badge-danger{background:var(--danger-bg);color:#991b1b}.badge-primary{background:var(--primary-light);color:var(--primary)}.switch{width:44px;height:24px;display:inline-block;position:relative}.switch input{opacity:0;width:0;height:0}.slider{cursor:pointer;background-color:#cbd5e1;border-radius:24px;transition:all .3s;position:absolute;inset:0}.slider:before{content:"";width:20px;height:20px;box-shadow:var(--shadow-xs);background-color:#fff;border-radius:50%;transition:all .3s cubic-bezier(.4,0,.2,1);position:absolute;bottom:2px;left:2px}input:checked+.slider{background-color:var(--primary)}input:checked+.slider:before{transform:translate(20px)}.w-100{width:100%}.mt-4{margin-top:1.5rem}.mt-5{margin-top:2rem}.mb-0{margin-bottom:0}.mb-1{margin-bottom:.25rem}.mb-4{margin-bottom:1.5rem}.mx-1{margin-left:.25rem;margin-right:.25rem}.py-5{padding-top:3rem;padding-bottom:3rem}.text-center{text-align:center}.d-flex{display:flex}.justify-content-between{justify-content:space-between}.align-items-center{align-items:center}.font-weight-500{font-weight:500}.action-buttons{gap:8px;display:flex}@keyframes fadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:translate(0)}}.animate-fade-in{opacity:0;animation:.45s ease-out forwards fadeIn}.modal-overlay{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:1000;background-color:#0f1b3d8c;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal-content{background:var(--surface);width:100%;max-width:820px;max-height:90vh;box-shadow:var(--shadow-lg), 0 0 0 1px var(--border);border:1px solid var(--border);border-radius:20px;animation:.3s cubic-bezier(.4,0,.2,1) fadeIn;overflow-y:auto}.modal-header{border-bottom:1px solid var(--border);background:var(--surface-2);border-radius:20px 20px 0 0;justify-content:space-between;align-items:center;padding:22px 28px;display:flex}.modal-header h3{color:var(--text-main);margin:0;font-size:1.1rem;font-weight:700}.btn-close{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;padding:6px;font-size:1.375rem;line-height:1;transition:all .2s;display:flex}.btn-close:hover{background:var(--danger-bg);color:var(--danger)}.modal-body{padding:28px}.modal-footer{border-top:1px solid var(--border);background:var(--surface-2);border-radius:0 0 20px 20px;justify-content:flex-end;gap:12px;padding:18px 28px;display:flex}.search-bar{position:relative}.pagination-container{justify-content:center;align-items:center;gap:6px;margin-top:24px;display:flex}:root{--toastify-color-light:#fff;--toastify-color-dark:#121212;--toastify-color-info:#3498db;--toastify-color-success:#07bc0c;--toastify-color-warning:#f1c40f;--toastify-color-error:#e74c3c;--toastify-color-transparent:#ffffffb3;--toastify-icon-color-info:var(--toastify-color-info);--toastify-icon-color-success:var(--toastify-color-success);--toastify-icon-color-warning:var(--toastify-color-warning);--toastify-icon-color-error:var(--toastify-color-error);--toastify-toast-width:320px;--toastify-toast-offset:16px;--toastify-toast-top:max(var(--toastify-toast-offset), env(safe-area-inset-top));--toastify-toast-right:max(var(--toastify-toast-offset), env(safe-area-inset-right));--toastify-toast-left:max(var(--toastify-toast-offset), env(safe-area-inset-left));--toastify-toast-bottom:max(var(--toastify-toast-offset), env(safe-area-inset-bottom));--toastify-toast-background:#fff;--toastify-toast-min-height:64px;--toastify-toast-max-height:800px;--toastify-toast-bd-radius:6px;--toastify-font-family:sans-serif;--toastify-z-index:9999;--toastify-text-color-light:#757575;--toastify-text-color-dark:#fff;--toastify-text-color-info:#fff;--toastify-text-color-success:#fff;--toastify-text-color-warning:#fff;--toastify-text-color-error:#fff;--toastify-spinner-color:#616161;--toastify-spinner-color-empty-area:#e0e0e0;--toastify-color-progress-light:linear-gradient(to right, #4cd964, #5ac8fa, #007aff, #34aadc, #5856d6, #ff2d55);--toastify-color-progress-dark:#bb86fc;--toastify-color-progress-info:var(--toastify-color-info);--toastify-color-progress-success:var(--toastify-color-success);--toastify-color-progress-warning:var(--toastify-color-warning);--toastify-color-progress-error:var(--toastify-color-error);--toastify-color-progress-bgo:.2}.Toastify__toast-container{z-index:var(--toastify-z-index);-webkit-transform:translate3d(0, 0, var(--toastify-z-index));width:var(--toastify-toast-width);box-sizing:border-box;color:#fff;padding:4px;position:fixed}.Toastify__toast-container--top-left{top:var(--toastify-toast-top);left:var(--toastify-toast-left)}.Toastify__toast-container--top-center{top:var(--toastify-toast-top);left:50%;transform:translate(-50%)}.Toastify__toast-container--top-right{top:var(--toastify-toast-top);right:var(--toastify-toast-right)}.Toastify__toast-container--bottom-left{bottom:var(--toastify-toast-bottom);left:var(--toastify-toast-left)}.Toastify__toast-container--bottom-center{bottom:var(--toastify-toast-bottom);left:50%;transform:translate(-50%)}.Toastify__toast-container--bottom-right{bottom:var(--toastify-toast-bottom);right:var(--toastify-toast-right)}@media only screen and (width<=480px){.Toastify__toast-container{width:100vw;left:env(safe-area-inset-left);margin:0;padding:0}.Toastify__toast-container--top-left,.Toastify__toast-container--top-center,.Toastify__toast-container--top-right{top:env(safe-area-inset-top);transform:translate(0)}.Toastify__toast-container--bottom-left,.Toastify__toast-container--bottom-center,.Toastify__toast-container--bottom-right{bottom:env(safe-area-inset-bottom);transform:translate(0)}.Toastify__toast-container--rtl{right:env(safe-area-inset-right);left:initial}}.Toastify__toast{--y:0;-ms-touch-action:none;touch-action:none;min-height:var(--toastify-toast-min-height);box-sizing:border-box;border-radius:var(--toastify-toast-bd-radius);max-height:var(--toastify-toast-max-height);font-family:var(--toastify-font-family);cursor:default;z-index:0;direction:ltr;justify-content:space-between;margin-bottom:1rem;padding:8px;display:flex;position:relative;overflow:hidden;box-shadow:0 4px 12px #0000001a}.Toastify__toast--stacked{width:100%;transform:translate3d(0, var(--y), 0) scale(var(--s));transition:transform .3s;position:absolute}.Toastify__toast--stacked[data-collapsed] .Toastify__toast-body,.Toastify__toast--stacked[data-collapsed] .Toastify__close-button{transition:opacity .1s}.Toastify__toast--stacked[data-collapsed=false]{overflow:visible}.Toastify__toast--stacked[data-collapsed=true]:not(:last-child)>*{opacity:0}.Toastify__toast--stacked:after{content:"";height:calc(var(--g) * 1px);position:absolute;bottom:100%;left:0;right:0}.Toastify__toast--stacked[data-pos=top]{top:0}.Toastify__toast--stacked[data-pos=bot]{bottom:0}.Toastify__toast--stacked[data-pos=bot].Toastify__toast--stacked:before{transform-origin:top}.Toastify__toast--stacked[data-pos=top].Toastify__toast--stacked:before{transform-origin:bottom}.Toastify__toast--stacked:before{content:"";z-index:-1;height:100%;position:absolute;bottom:0;left:0;right:0;transform:scaleY(3)}.Toastify__toast--rtl{direction:rtl}.Toastify__toast--close-on-click{cursor:pointer}.Toastify__toast-body{flex:auto;align-items:center;margin:auto 0;padding:6px;display:flex}.Toastify__toast-body>div:last-child{word-break:break-word;flex:1}.Toastify__toast-icon{-webkit-margin-end:10px;flex-shrink:0;width:20px;margin-inline-end:10px;display:flex}.Toastify--animate{animation-duration:.5s;animation-fill-mode:both}.Toastify--animate-icon{animation-duration:.3s;animation-fill-mode:both}@media only screen and (width<=480px){.Toastify__toast{border-radius:0;margin-bottom:0}}.Toastify__toast-theme--dark{background:var(--toastify-color-dark);color:var(--toastify-text-color-dark)}.Toastify__toast-theme--light,.Toastify__toast-theme--colored.Toastify__toast--default{background:var(--toastify-color-light);color:var(--toastify-text-color-light)}.Toastify__toast-theme--colored.Toastify__toast--info{color:var(--toastify-text-color-info);background:var(--toastify-color-info)}.Toastify__toast-theme--colored.Toastify__toast--success{color:var(--toastify-text-color-success);background:var(--toastify-color-success)}.Toastify__toast-theme--colored.Toastify__toast--warning{color:var(--toastify-text-color-warning);background:var(--toastify-color-warning)}.Toastify__toast-theme--colored.Toastify__toast--error{color:var(--toastify-text-color-error);background:var(--toastify-color-error)}.Toastify__progress-bar-theme--light{background:var(--toastify-color-progress-light)}.Toastify__progress-bar-theme--dark{background:var(--toastify-color-progress-dark)}.Toastify__progress-bar--info{background:var(--toastify-color-progress-info)}.Toastify__progress-bar--success{background:var(--toastify-color-progress-success)}.Toastify__progress-bar--warning{background:var(--toastify-color-progress-warning)}.Toastify__progress-bar--error{background:var(--toastify-color-progress-error)}.Toastify__progress-bar-theme--colored.Toastify__progress-bar--info,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--success,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--warning,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--error{background:var(--toastify-color-transparent)}.Toastify__close-button{color:#fff;cursor:pointer;opacity:.7;z-index:1;background:0 0;border:none;outline:none;align-self:flex-start;padding:0;transition:all .3s}.Toastify__close-button--light{color:#000;opacity:.3}.Toastify__close-button>svg{fill:currentColor;width:14px;height:16px}.Toastify__close-button:hover,.Toastify__close-button:focus{opacity:1}@keyframes Toastify__trackProgress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.Toastify__progress-bar{width:100%;height:100%;z-index:var(--toastify-z-index);opacity:.7;transform-origin:0;border-bottom-left-radius:var(--toastify-toast-bd-radius);position:absolute;bottom:0;left:0}.Toastify__progress-bar--animated{animation:linear forwards Toastify__trackProgress}.Toastify__progress-bar--controlled{transition:transform .2s}.Toastify__progress-bar--rtl{right:0;left:initial;transform-origin:100%;border-bottom-left-radius:initial;border-bottom-right-radius:var(--toastify-toast-bd-radius)}.Toastify__progress-bar--wrp{border-bottom-left-radius:var(--toastify-toast-bd-radius);width:100%;height:5px;position:absolute;bottom:0;left:0}.Toastify__progress-bar--wrp[data-hidden=true]{opacity:0}.Toastify__progress-bar--bg{opacity:var(--toastify-color-progress-bgo);width:100%;height:100%}.Toastify__spinner{box-sizing:border-box;border:2px solid;border-color:var(--toastify-spinner-color-empty-area);border-right-color:var(--toastify-spinner-color);border-radius:100%;width:20px;height:20px;animation:.65s linear infinite Toastify__spin}@keyframes Toastify__bounceInRight{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate(3000px)}60%{opacity:1;transform:translate(-25px)}75%{transform:translate(10px)}90%{transform:translate(-5px)}to{transform:none}}@keyframes Toastify__bounceOutRight{20%{opacity:1;transform:translate3d(-20px, var(--y), 0)}to{opacity:0;transform:translate3d(2000px, var(--y), 0)}}@keyframes Toastify__bounceInLeft{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate(-3000px)}60%{opacity:1;transform:translate(25px)}75%{transform:translate(-10px)}90%{transform:translate(5px)}to{transform:none}}@keyframes Toastify__bounceOutLeft{20%{opacity:1;transform:translate3d(20px, var(--y), 0)}to{opacity:0;transform:translate3d(-2000px, var(--y), 0)}}@keyframes Toastify__bounceInUp{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translateY(3000px)}60%{opacity:1;transform:translateY(-20px)}75%{transform:translateY(10px)}90%{transform:translateY(-5px)}to{transform:translate(0,0)}}@keyframes Toastify__bounceOutUp{20%{transform:translate3d(0, calc(var(--y) - 10px), 0)}40%,45%{opacity:1;transform:translate3d(0, calc(var(--y) + 20px), 0)}to{opacity:0;transform:translateY(-2000px)}}@keyframes Toastify__bounceInDown{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translateY(-3000px)}60%{opacity:1;transform:translateY(25px)}75%{transform:translateY(-10px)}90%{transform:translateY(5px)}to{transform:none}}@keyframes Toastify__bounceOutDown{20%{transform:translate3d(0, calc(var(--y) - 10px), 0)}40%,45%{opacity:1;transform:translate3d(0, calc(var(--y) + 20px), 0)}to{opacity:0;transform:translateY(2000px)}}.Toastify__bounce-enter--top-left,.Toastify__bounce-enter--bottom-left{animation-name:Toastify__bounceInLeft}.Toastify__bounce-enter--top-right,.Toastify__bounce-enter--bottom-right{animation-name:Toastify__bounceInRight}.Toastify__bounce-enter--top-center{animation-name:Toastify__bounceInDown}.Toastify__bounce-enter--bottom-center{animation-name:Toastify__bounceInUp}.Toastify__bounce-exit--top-left,.Toastify__bounce-exit--bottom-left{animation-name:Toastify__bounceOutLeft}.Toastify__bounce-exit--top-right,.Toastify__bounce-exit--bottom-right{animation-name:Toastify__bounceOutRight}.Toastify__bounce-exit--top-center{animation-name:Toastify__bounceOutUp}.Toastify__bounce-exit--bottom-center{animation-name:Toastify__bounceOutDown}@keyframes Toastify__zoomIn{0%{opacity:0;transform:scale3d(.3,.3,.3)}50%{opacity:1}}@keyframes Toastify__zoomOut{0%{opacity:1}50%{opacity:0;transform:translate3d(0, var(--y), 0) scale3d(.3, .3, .3)}to{opacity:0}}.Toastify__zoom-enter{animation-name:Toastify__zoomIn}.Toastify__zoom-exit{animation-name:Toastify__zoomOut}@keyframes Toastify__flipIn{0%{opacity:0;animation-timing-function:ease-in;transform:perspective(400px)rotateX(90deg)}40%{animation-timing-function:ease-in;transform:perspective(400px)rotateX(-20deg)}60%{opacity:1;transform:perspective(400px)rotateX(10deg)}80%{transform:perspective(400px)rotateX(-5deg)}to{transform:perspective(400px)}}@keyframes Toastify__flipOut{0%{transform:translate3d(0, var(--y), 0) perspective(400px)}30%{transform:translate3d(0, var(--y), 0) perspective(400px) rotate3d(1, 0, 0, -20deg);opacity:1}to{transform:translate3d(0, var(--y), 0) perspective(400px) rotate3d(1, 0, 0, 90deg);opacity:0}}.Toastify__flip-enter{animation-name:Toastify__flipIn}.Toastify__flip-exit{animation-name:Toastify__flipOut}@keyframes Toastify__slideInRight{0%{visibility:visible;transform:translate(110%)}to{transform:translate3d(0, var(--y), 0)}}@keyframes Toastify__slideInLeft{0%{visibility:visible;transform:translate(-110%)}to{transform:translate3d(0, var(--y), 0)}}@keyframes Toastify__slideInUp{0%{visibility:visible;transform:translateY(110%)}to{transform:translate3d(0, var(--y), 0)}}@keyframes Toastify__slideInDown{0%{visibility:visible;transform:translateY(-110%)}to{transform:translate3d(0, var(--y), 0)}}@keyframes Toastify__slideOutRight{0%{transform:translate3d(0, var(--y), 0)}to{visibility:hidden;transform:translate3d(110%, var(--y), 0)}}@keyframes Toastify__slideOutLeft{0%{transform:translate3d(0, var(--y), 0)}to{visibility:hidden;transform:translate3d(-110%, var(--y), 0)}}@keyframes Toastify__slideOutDown{0%{transform:translate3d(0, var(--y), 0)}to{visibility:hidden;transform:translateY(500px)}}@keyframes Toastify__slideOutUp{0%{transform:translate3d(0, var(--y), 0)}to{visibility:hidden;transform:translateY(-500px)}}.Toastify__slide-enter--top-left,.Toastify__slide-enter--bottom-left{animation-name:Toastify__slideInLeft}.Toastify__slide-enter--top-right,.Toastify__slide-enter--bottom-right{animation-name:Toastify__slideInRight}.Toastify__slide-enter--top-center{animation-name:Toastify__slideInDown}.Toastify__slide-enter--bottom-center{animation-name:Toastify__slideInUp}.Toastify__slide-exit--top-left,.Toastify__slide-exit--bottom-left{animation-name:Toastify__slideOutLeft;animation-duration:.3s;animation-timing-function:ease-in}.Toastify__slide-exit--top-right,.Toastify__slide-exit--bottom-right{animation-name:Toastify__slideOutRight;animation-duration:.3s;animation-timing-function:ease-in}.Toastify__slide-exit--top-center{animation-name:Toastify__slideOutUp;animation-duration:.3s;animation-timing-function:ease-in}.Toastify__slide-exit--bottom-center{animation-name:Toastify__slideOutDown;animation-duration:.3s;animation-timing-function:ease-in}@keyframes Toastify__spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.dashboard-container{background-color:#f3f4f6;flex-direction:column;width:100%;max-width:768px;min-height:100vh;margin:0 auto;font-family:Inter,system-ui,-apple-system,sans-serif;display:flex;position:relative;box-shadow:0 0 20px #0000000d}.dashboard-header{color:#fff;z-index:10;background-color:#0d6efd;justify-content:space-between;align-items:center;padding:16px 20px;display:flex;position:sticky;top:0}.dashboard-header h1{margin:0;font-size:1.1rem;font-weight:600}.profile-btn{color:#fff;cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:4px;display:flex}.dashboard-main{flex:1;padding:20px 20px 80px}.summary-cards{flex-direction:column;gap:12px;margin-bottom:24px;display:flex}.summary-card{cursor:pointer;background:#fff;border-left:4px solid #0000;border-radius:12px;align-items:center;gap:16px;padding:16px;transition:all .2s;display:flex;box-shadow:0 2px 8px #0000000a}.summary-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000014}.summary-card.active{border-left:4px solid #0d6efd}.icon-wrapper{color:#fff;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;display:flex}.icon-wrapper.blue{background-color:#0d6efd}.icon-wrapper.yellow{color:#333;background-color:#ffc107}.icon-wrapper.cyan{color:#333;background-color:#0dcaf0}.icon-wrapper.green{background-color:#198754}.summary-info h3{color:#1f2937;margin:0;font-size:1rem;font-weight:600}.summary-info p{color:#6b7280;margin:4px 0 0;font-size:.85rem}.job-list{flex-direction:column;gap:16px;display:flex}.empty-state{text-align:center;color:#6b7280;padding:32px 0;font-size:.95rem;font-weight:500}.job-card{background:#fff;border-radius:12px;padding:16px;box-shadow:0 2px 8px #0000000a}.job-card-header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.job-title{color:#1f2937;margin:0;font-size:1.1rem;font-weight:600}.job-id{color:#fff;background-color:#0d6efd;border-radius:16px;padding:4px 8px;font-size:.75rem;font-weight:600}.job-details{flex-direction:column;gap:12px;margin-bottom:16px;display:flex}.job-date{color:#4b5563;margin:0;font-size:.9rem;font-weight:500}.job-customer-section{background-color:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;flex-direction:column;gap:6px;padding:10px 12px;display:flex}.job-customer-item{color:#334155;align-items:center;gap:8px;font-size:.9rem;display:flex}.customer-icon{color:#64748b;flex-shrink:0}.contact-link{color:#0d6efd;font-weight:500;text-decoration:none}.contact-link:hover{text-decoration:underline}.job-location-section{background-color:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;align-items:flex-start;gap:8px;padding:10px 12px;display:flex}.location-icon{color:#16a34a;flex-shrink:0;margin-top:2px}.location-content{flex-direction:column;gap:4px;display:flex}.address-text{line-height:1.4;color:#166534!important;margin:0!important;font-size:.85rem!important}.directions-link{color:#15803d;margin-top:2px;font-size:.85rem;font-weight:600;text-decoration:underline;display:inline-block}.directions-link:hover{color:#16a34a}.job-actions{flex-wrap:wrap;gap:12px;display:flex}.btn-action{cursor:pointer;border:none;border-radius:8px;flex:1;min-width:140px;padding:12px;font-size:.95rem;font-weight:500;transition:all .2s}.btn-start-work{color:#fff;background-color:#0d6efd}.btn-start-work:hover{background-color:#0b5ed7}.btn-previous-progress{color:#0d6efd;background:0 0;border:1px solid #0d6efd}.btn-previous-progress:hover{background-color:#f3f4f6}.btn-add-progress{color:#fff;background-color:#f59e0b}.btn-add-progress:hover{background-color:#d97706}.btn-complete-work{color:#fff;background-color:#10b981}.btn-complete-work:hover{background-color:#059669}.modal-overlay{z-index:1000;background-color:#0006;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.modal-content{background:#fff;border-radius:8px;width:100%;max-width:400px;overflow:hidden;box-shadow:0 4px 20px #00000026}.start-modal{text-align:center;padding:32px 24px}.modal-icon-circle{border:4px solid #94a3b8;border-radius:50%;justify-content:center;align-items:center;width:80px;height:80px;margin:0 auto 24px;display:flex}.question-mark{color:#94a3b8;font-size:40px;font-weight:300}.start-modal h2{color:#334155;margin:0 0 24px;font-size:1.5rem;font-weight:500}.modal-actions-center{justify-content:center;gap:16px;display:flex}.complete-modal-header{color:#fff;background-color:#198754;justify-content:space-between;align-items:center;padding:16px;display:flex}.complete-modal-header h2{margin:0;font-size:1.25rem;font-weight:600}.close-btn{color:#fff;cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:4px;display:flex}.complete-modal-body{padding:16px}.complete-modal-body textarea{resize:vertical;box-sizing:border-box;border:1px solid #cbd5e1;border-radius:6px;width:100%;padding:12px;font-family:inherit;font-size:.95rem}.complete-modal-body textarea:focus{border-color:#198754;outline:none}.complete-modal-footer{justify-content:flex-end;gap:12px;padding:16px;display:flex}.previous-progress-body{background-color:#f8f9fa;border-radius:8px;max-height:400px;padding:16px;overflow-y:auto}.progress-timeline{flex-direction:column;gap:16px;display:flex}.progress-timeline-item{background:#fff;border-left:4px solid #0d6efd;border-radius:8px;padding:16px;box-shadow:0 1px 3px #0000000d}.progress-timeline-date{color:#6b7280;margin-bottom:8px;font-size:.85rem;font-weight:500}.progress-timeline-desc{color:#1f2937;margin-bottom:12px;font-size:.95rem;line-height:1.5}.progress-timeline-photos{flex-wrap:wrap;gap:8px;display:flex}.progress-photo-thumb{object-fit:cover;border:1px solid #e5e7eb;border-radius:6px;width:80px;height:80px}.btn-modal{cursor:pointer;border:none;border-radius:6px;padding:10px 24px;font-size:1rem;font-weight:600;transition:opacity .2s}.btn-modal:hover{opacity:.9}.btn-yes{color:#fff;background-color:#6366f1}.btn-cancel{color:#fff;background-color:#64748b}.btn-submit{color:#fff;background-color:#198754}.photo-upload-section{text-align:left;margin:16px 0 24px}.upload-instruction{color:#64748b;text-align:center;margin-bottom:12px;font-size:.9rem}.photo-previews{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.photo-thumbnail{border:1px solid #e2e8f0;border-radius:8px;width:80px;height:80px;position:relative;overflow:hidden}.photo-thumbnail img{object-fit:cover;width:100%;height:100%}.remove-photo-btn{color:#fff;cursor:pointer;background:#0009;border:none;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;padding:0;display:flex;position:absolute;top:4px;right:4px}.remove-photo-btn:hover{background:#000c}.hidden-file-input{display:none}.photo-upload-label{cursor:pointer}.upload-placeholder{color:#64748b;background-color:#f8fafc;border:2px dashed #cbd5e1;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;width:80px;height:80px;font-size:.75rem;transition:all .2s;display:flex}.upload-placeholder:hover{color:#6366f1;background-color:#f1f5f9;border-color:#6366f1}.upload-placeholder span{margin-top:4px}.btn-yes:disabled,.btn-submit:disabled{cursor:not-allowed;opacity:.7;background-color:#94a3b8}.bottom-nav{z-index:10;background:#fff;justify-content:space-around;width:100%;max-width:768px;padding:12px 0;display:flex;position:fixed;bottom:0;left:50%;transform:translate(-50%);box-shadow:0 -2px 10px #0000000d}.nav-item{color:#6b7280;cursor:pointer;background:0 0;border:none;flex-direction:column;align-items:center;gap:4px;font-size:.75rem;display:flex}.nav-item.active{color:#0d6efd}.nav-item:hover:not(.active){color:#374151}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animate-spin{animation:1s linear infinite spin}
