:root{--toastify-color-light:#fff;--toastify-color-dark:#121212;--toastify-color-info:#3498db;--toastify-color-success:#07bc0c;--toastify-color-warning:#f1c40f;--toastify-color-error:#e74d3c;--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-container-width:fit-content;--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-padding:14px;--toastify-toast-min-height:64px;--toastify-toast-max-height:800px;--toastify-toast-bd-radius:6px;--toastify-toast-shadow:0px 4px 12px #0000001a;--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(90deg,#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:0.2}.Toastify__toast-container{box-sizing:border-box;color:#fff;display:flex;flex-direction:column;position:fixed;-webkit-transform:translateZ(9999);-webkit-transform:translateZ(var(--toastify-z-index));width:-webkit-fit-content;width:fit-content;width:var(--toastify-container-width);z-index:9999;z-index:var(--toastify-z-index)}.Toastify__toast-container--top-left{left:max(16px,env(safe-area-inset-left));left:var(--toastify-toast-left);top:max(16px,env(safe-area-inset-top));top:var(--toastify-toast-top)}.Toastify__toast-container--top-center{align-items:center;left:50%;top:max(16px,env(safe-area-inset-top));top:var(--toastify-toast-top);transform:translateX(-50%)}.Toastify__toast-container--top-right{align-items:end;right:max(16px,env(safe-area-inset-right));right:var(--toastify-toast-right);top:max(16px,env(safe-area-inset-top));top:var(--toastify-toast-top)}.Toastify__toast-container--bottom-left{bottom:max(16px,env(safe-area-inset-bottom));bottom:var(--toastify-toast-bottom);left:max(16px,env(safe-area-inset-left));left:var(--toastify-toast-left)}.Toastify__toast-container--bottom-center{align-items:center;bottom:max(16px,env(safe-area-inset-bottom));bottom:var(--toastify-toast-bottom);left:50%;transform:translateX(-50%)}.Toastify__toast-container--bottom-right{align-items:end;bottom:max(16px,env(safe-area-inset-bottom));bottom:var(--toastify-toast-bottom);right:max(16px,env(safe-area-inset-right));right:var(--toastify-toast-right)}.Toastify__toast{--y:0;align-items:center;border-radius:6px;border-radius:var(--toastify-toast-bd-radius);box-shadow:0 4px 12px #0000001a;box-shadow:var(--toastify-toast-shadow);box-sizing:border-box;display:flex;flex:1 1 auto;font-family:sans-serif;font-family:var(--toastify-font-family);margin-bottom:1rem;max-height:800px;max-height:var(--toastify-toast-max-height);min-height:64px;min-height:var(--toastify-toast-min-height);padding:14px;padding:var(--toastify-toast-padding);position:relative;touch-action:none;width:320px;width:var(--toastify-toast-width);word-break:break-word;z-index:0}@media only screen and (max-width:480px){.Toastify__toast-container{left:env(safe-area-inset-left);margin:0;width:100vw}.Toastify__toast-container--top-center,.Toastify__toast-container--top-left,.Toastify__toast-container--top-right{top:env(safe-area-inset-top);transform:translateX(0)}.Toastify__toast-container--bottom-center,.Toastify__toast-container--bottom-left,.Toastify__toast-container--bottom-right{bottom:env(safe-area-inset-bottom);transform:translateX(0)}.Toastify__toast-container--rtl{left:auto;right:env(safe-area-inset-right)}.Toastify__toast{--toastify-toast-width:100%;border-radius:0;margin-bottom:0}}.Toastify__toast-container[data-stacked=true]{width:320px;width:var(--toastify-toast-width)}.Toastify__toast--stacked{position:absolute;transform:translate3d(0,var(--y),0) scale(var(--s));transition:transform .3s;width:100%}.Toastify__toast--stacked[data-collapsed] .Toastify__close-button,.Toastify__toast--stacked[data-collapsed] .Toastify__toast-body{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{bottom:100%;content:"";height:calc(var(--g)*1px);left:0;position:absolute;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{bottom:0;content:"";height:100%;left:0;position:absolute;right:0;transform:scaleY(3);z-index:-1}.Toastify__toast--rtl{direction:rtl}.Toastify__toast--close-on-click{cursor:pointer}.Toastify__toast-icon{-webkit-margin-end:10px;display:flex;flex-shrink:0;margin-inline-end:10px;width:22px}.Toastify--animate{animation-duration:.5s;animation-fill-mode:both}.Toastify--animate-icon{animation-duration:.3s;animation-fill-mode:both}.Toastify__toast-theme--dark{background:#121212;background:var(--toastify-color-dark);color:#fff;color:var(--toastify-text-color-dark)}.Toastify__toast-theme--colored.Toastify__toast--default,.Toastify__toast-theme--light{background:#fff;background:var(--toastify-color-light);color:#757575;color:var(--toastify-text-color-light)}.Toastify__toast-theme--colored.Toastify__toast--info{background:#3498db;background:var(--toastify-color-info);color:#fff;color:var(--toastify-text-color-info)}.Toastify__toast-theme--colored.Toastify__toast--success{background:#07bc0c;background:var(--toastify-color-success);color:#fff;color:var(--toastify-text-color-success)}.Toastify__toast-theme--colored.Toastify__toast--warning{background:#f1c40f;background:var(--toastify-color-warning);color:#fff;color:var(--toastify-text-color-warning)}.Toastify__toast-theme--colored.Toastify__toast--error{background:#e74d3c;background:var(--toastify-color-error);color:#fff;color:var(--toastify-text-color-error)}.Toastify__progress-bar-theme--light{background:linear-gradient(90deg,#4cd964,#5ac8fa,#007aff,#34aadc,#5856d6,#ff2d55);background:var(--toastify-color-progress-light)}.Toastify__progress-bar-theme--dark{background:#bb86fc;background:var(--toastify-color-progress-dark)}.Toastify__progress-bar--info{background:#3498db;background:var(--toastify-color-progress-info)}.Toastify__progress-bar--success{background:#07bc0c;background:var(--toastify-color-progress-success)}.Toastify__progress-bar--warning{background:#f1c40f;background:var(--toastify-color-progress-warning)}.Toastify__progress-bar--error{background:#e74d3c;background:var(--toastify-color-progress-error)}.Toastify__progress-bar-theme--colored.Toastify__progress-bar--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{background:#ffffffb3;background:var(--toastify-color-transparent)}.Toastify__close-button{background:#0000;border:none;color:#fff;cursor:pointer;opacity:.7;outline:none;padding:0;position:absolute;right:6px;top:6px;transition:.3s ease;z-index:1}.Toastify__toast--rtl .Toastify__close-button{left:6px;right:auto}.Toastify__close-button--light{color:#000;opacity:.3}.Toastify__close-button>svg{fill:currentColor;height:16px;width:14px}.Toastify__close-button:focus,.Toastify__close-button:hover{opacity:1}@keyframes Toastify__trackProgress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.Toastify__progress-bar{bottom:0;height:100%;left:0;opacity:.7;position:absolute;transform-origin:left;width:100%;z-index:1}.Toastify__progress-bar--animated{animation:Toastify__trackProgress linear 1 forwards}.Toastify__progress-bar--controlled{transition:transform .2s}.Toastify__progress-bar--rtl{border-bottom-left-radius:0;left:auto;right:0;transform-origin:right}.Toastify__progress-bar--wrp{border-bottom-left-radius:6px;border-bottom-left-radius:var(--toastify-toast-bd-radius);border-bottom-right-radius:6px;border-bottom-right-radius:var(--toastify-toast-bd-radius);bottom:0;height:5px;left:0;overflow:hidden;position:absolute;width:100%}.Toastify__progress-bar--wrp[data-hidden=true]{opacity:0}.Toastify__progress-bar--bg{height:100%;opacity:.2;opacity:var(--toastify-color-progress-bgo);width:100%}.Toastify__spinner{animation:Toastify__spin .65s linear infinite;border:2px solid #e0e0e0;border-color:var(--toastify-spinner-color-empty-area);border-radius:100%;border-right-color:#616161;border-right-color:var(--toastify-spinner-color);box-sizing:border-box;height:20px;width:20px}@keyframes Toastify__bounceInRight{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(3000px,0,0)}60%{opacity:1;transform:translate3d(-25px,0,0)}75%{transform:translate3d(10px,0,0)}90%{transform:translate3d(-5px,0,0)}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:translate3d(-3000px,0,0)}60%{opacity:1;transform:translate3d(25px,0,0)}75%{transform:translate3d(-10px,0,0)}90%{transform:translate3d(5px,0,0)}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:translate3d(0,3000px,0)}60%{opacity:1;transform:translate3d(0,-20px,0)}75%{transform:translate3d(0,10px,0)}90%{transform:translate3d(0,-5px,0)}to{transform:translateZ(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:translate3d(0,-2000px,0)}}@keyframes Toastify__bounceInDown{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,-3000px,0)}60%{opacity:1;transform:translate3d(0,25px,0)}75%{transform:translate3d(0,-10px,0)}90%{transform:translate3d(0,5px,0)}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:translate3d(0,2000px,0)}}.Toastify__bounce-enter--bottom-left,.Toastify__bounce-enter--top-left{animation-name:Toastify__bounceInLeft}.Toastify__bounce-enter--bottom-right,.Toastify__bounce-enter--top-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--bottom-left,.Toastify__bounce-exit--top-left{animation-name:Toastify__bounceOutLeft}.Toastify__bounce-exit--bottom-right,.Toastify__bounce-exit--top-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%{animation-timing-function:ease-in;opacity:0;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%{opacity:1;transform:translate3d(0,var(--y),0) perspective(400px) rotateX(-20deg)}to{opacity:0;transform:translate3d(0,var(--y),0) perspective(400px) rotateX(90deg)}}.Toastify__flip-enter{animation-name:Toastify__flipIn}.Toastify__flip-exit{animation-name:Toastify__flipOut}@keyframes Toastify__slideInRight{0%{transform:translate3d(110%,0,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInLeft{0%{transform:translate3d(-110%,0,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInUp{0%{transform:translate3d(0,110%,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInDown{0%{transform:translate3d(0,-110%,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideOutRight{0%{transform:translate3d(0,var(--y),0)}to{transform:translate3d(110%,var(--y),0);visibility:hidden}}@keyframes Toastify__slideOutLeft{0%{transform:translate3d(0,var(--y),0)}to{transform:translate3d(-110%,var(--y),0);visibility:hidden}}@keyframes Toastify__slideOutDown{0%{transform:translate3d(0,var(--y),0)}to{transform:translate3d(0,500px,0);visibility:hidden}}@keyframes Toastify__slideOutUp{0%{transform:translate3d(0,var(--y),0)}to{transform:translate3d(0,-500px,0);visibility:hidden}}.Toastify__slide-enter--bottom-left,.Toastify__slide-enter--top-left{animation-name:Toastify__slideInLeft}.Toastify__slide-enter--bottom-right,.Toastify__slide-enter--top-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--bottom-left,.Toastify__slide-exit--top-left{animation-duration:.3s;animation-name:Toastify__slideOutLeft;animation-timing-function:ease-in}.Toastify__slide-exit--bottom-right,.Toastify__slide-exit--top-right{animation-duration:.3s;animation-name:Toastify__slideOutRight;animation-timing-function:ease-in}.Toastify__slide-exit--top-center{animation-duration:.3s;animation-name:Toastify__slideOutUp;animation-timing-function:ease-in}.Toastify__slide-exit--bottom-center{animation-duration:.3s;animation-name:Toastify__slideOutDown;animation-timing-function:ease-in}@keyframes Toastify__spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.customer-leads-form{background:var(--bg-primary);margin:0 auto;max-width:1000px;padding:.5rem}.customer-list-container{display:flex;flex-direction:column;gap:8px}.customer-item{background:var(--bg-white);border:1px solid var(--border-color);border-radius:var(--border-radius-md);transition:all var(--transition-fast)}.customer-item:hover{border-color:var(--primary-color);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.customer-item-content{padding:12px}.customer-info{cursor:pointer;flex-direction:column;gap:2px}.add-customer-btn{align-items:center;background:#0000;border:2px dashed var(--primary-color);border-radius:var(--border-radius-md);color:var(--primary-color);display:flex;font-size:.9rem;font-weight:500;gap:6px;justify-content:center;padding:8px 16px;transition:all var(--transition-fast)}.add-customer-btn:hover{background:var(--primary-color);border-style:solid;box-shadow:var(--shadow-sm);color:#fff;transform:translateY(-1px)}.form-actions{margin-top:1rem;padding:1rem 0}.customer-leads-form .card{background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);margin-bottom:.5rem;transition:var(--transition-base)}.customer-leads-form .card:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.customer-leads-form .card-header{background:linear-gradient(135deg,var(--primary-50) 0,var(--primary-100) 100%);border-bottom:1px solid var(--border-light);color:var(--primary-700);font-size:.8rem;font-weight:600;line-height:1.1;min-height:auto;padding:.3rem .5rem}.customer-leads-form .form-group{margin-bottom:.5rem}.customer-leads-form .form-label{color:var(--text-primary);display:block;font-size:.95rem;font-weight:500;margin-bottom:.2rem}.customer-leads-form .form-control{background:var(--bg-primary);border:1px solid var(--border-light);border-radius:var(--radius-sm);font-size:.95rem;height:auto;min-height:38px;padding:.5rem .7rem;transition:var(--transition-base)}.customer-leads-form .form-control:focus{border-color:var(--primary-500);box-shadow:0 0 0 2px var(--primary-100);outline:none}.customer-leads-form .row{margin-bottom:0;margin-left:-.3rem;margin-right:-.3rem}.customer-leads-form .row>[class*=col-]{margin-bottom:.4rem;padding-left:.3rem;padding-right:.3rem}.customer-leads-form .form-check{margin-bottom:.4rem;padding-left:0}.customer-leads-form .form-check-input{background-color:var(--bg-primary);border:2px solid var(--border-light);border-radius:var(--radius-sm);cursor:pointer;height:1.25rem;margin-right:.75rem;margin-top:.125rem;position:relative;transition:all .2s ease-in-out;width:1.25rem}.customer-leads-form .form-check-input:checked{background-color:var(--primary-500);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3E%3C/svg%3E");border-color:var(--primary-500)}.customer-leads-form .form-check-input:focus{border-color:var(--primary-400);box-shadow:0 0 0 2px var(--primary-100);outline:none}.customer-leads-form .form-check-input:hover{border-color:var(--primary-300)}.customer-leads-form .form-check-label{color:var(--text-primary);cursor:pointer;font-size:.95rem;line-height:1.3;margin-left:.25rem}.customer-leads-form .form-section{border-bottom:1px solid var(--border-light);padding-bottom:1rem}.customer-leads-form .form-section:last-child{border-bottom:none;padding-bottom:0}.customer-leads-form .section-title{border-bottom:2px solid var(--primary-200);color:var(--primary-700);display:inline-block;font-size:1.1rem;font-weight:600;margin-bottom:1rem;padding-bottom:.5rem}.customer-leads-form .supplement-checkbox{background:linear-gradient(135deg,var(--warning-50) 0,var(--warning-100) 100%);border:1px solid var(--warning-200);border-radius:var(--radius-md);margin-bottom:.5rem;padding:.6rem}.customer-leads-form .supplement-checkbox .form-check{margin-bottom:0}.customer-leads-form .supplement-checkbox .form-check-input:checked{background-color:var(--warning-500);border-color:var(--warning-500)}.customer-leads-form .supplement-checkbox .form-check-label{color:var(--warning-700);font-weight:500}@media (max-width:768px){.customer-leads-form{padding:.4rem}.customer-leads-form .card-header{font-size:.7rem;line-height:1.1;min-height:auto;padding:.25rem .4rem}.customer-leads-form .card-body{padding:.6rem}.customer-leads-form .row>[class*=col-]{margin-bottom:.3rem;padding-left:.2rem;padding-right:.2rem}.customer-leads-form .form-group{margin-bottom:.4rem}.customer-leads-form .form-label{font-size:.9rem;margin-bottom:.15rem}.customer-leads-form .form-control{font-size:.9rem;min-height:36px;padding:.4rem .6rem}.customer-item-content{align-items:stretch;flex-direction:column;gap:6px;padding:6px 10px}.customer-info{flex-direction:column;gap:4px;text-align:center}.customer-id{font-size:.8rem!important;min-width:60px;padding:1px 4px}.customer-name{min-width:70px}.customer-name,.customer-phone{font-size:.8rem!important;padding:1px 2px}.customer-phone{min-width:90px}.add-customer-btn{font-size:.9rem;padding:12px}.form-actions{margin-top:.8rem;padding:.8rem 0}.customer-leads-form .page-title{font-size:1.2rem;margin-bottom:.6rem}}.card-header h3,.card-header h4{align-items:center;display:flex;gap:8px}.card-header h3:before{content:"📋";font-size:1.2em}.card-header h4:before{content:"🔍";font-size:1.1em}.customer-leads-form .card-header h5,.customer-leads-form .card-header h6{color:var(--primary-700);font-size:.85rem;font-weight:600;line-height:1.1;margin:0}.text-danger{color:var(--danger-color)!important}.form-control:focus{border-color:var(--primary-color);box-shadow:0 0 0 .2rem rgba(var(--primary-rgb),.25)}.form-check-input:checked{background-color:var(--primary-color);border-color:var(--primary-color)}.spinner-border-sm{height:1rem;width:1rem}.btn-lg{border-radius:var(--border-radius-lg);font-size:1.1rem;font-weight:600;padding:12px 32px;transition:all var(--transition-normal)}.btn-primary:hover:not(:disabled){box-shadow:var(--shadow-md);transform:translateY(-2px)}.btn-primary:disabled{cursor:not-allowed;opacity:.6}.error-message{display:block}.form-text{color:var(--text-muted);font-size:.875rem;margin-top:.25rem}.alert-info{background-color:rgba(var(--info-rgb),.1);border:1px solid var(--info-color);border-radius:var(--border-radius-md);color:var(--info-color);padding:12px 16px}.customer-leads-form .card-body{padding:.8rem}.customer-leads-form textarea.form-control{min-height:80px;resize:vertical}.customer-leads-form select.form-control{font-size:.95rem}.customer-leads-form .page-title{color:var(--primary-700);font-size:1.5rem;margin-bottom:1rem;text-align:center}.customer-item-content{justify-content:space-between;padding:8px 12px}.customer-info,.customer-item-content{align-items:center;display:flex;flex-direction:row}.customer-info{gap:16px;padding:4px 0}.customer-id{background:var(--primary-50);border:1px solid var(--primary-200);border-radius:4px;color:var(--primary-600);font-size:.85rem!important;font-weight:600;min-width:70px;padding:2px 6px;text-align:center}.customer-name{min-width:90px}.customer-name,.customer-phone{font-size:.85rem!important;padding:2px 4px;text-align:center}.customer-phone{background:var(--bg-light);border-radius:3px;color:var(--text-secondary);font-family:Courier New,monospace;min-width:110px}.card{animation:fadeInUp .3s ease-out}.card:nth-child(2){animation-delay:.1s}.card:nth-child(3){animation-delay:.2s}.card:nth-child(4){animation-delay:.3s}.card:nth-child(5){animation-delay:.4s}.card:nth-child(6){animation-delay:.5s}.reference-lead-search .css-26l3qy-menu{z-index:9999!important}.reference-lead-search .css-1pahdxg-control{border:1px solid var(--border-color);border-radius:var(--border-radius-md);box-shadow:none;transition:all var(--transition-fast)}.reference-lead-search .css-1pahdxg-control:hover{border-color:var(--primary-color)}.reference-lead-search .css-1pahdxg-control--is-focused{border-color:var(--primary-color);box-shadow:0 0 0 1px var(--primary-color)}.reference-lead-search [class*=menu]{position:absolute!important;z-index:9999!important}.reference-lead-search [class*=MenuList],.reference-lead-search [class*=option]{z-index:9999!important}:root{--primary-color:#2563eb;--primary-light:#3b82f6;--primary-dark:#1d4ed8;--primary-50:#2563eb0d;--primary-100:#2563eb1a;--primary-200:#2563eb33;--primary-300:#2563eb4d;--primary-400:#2563eb66;--primary-500:#2563eb80;--primary-600:#2563eb99;--primary-700:#2563ebb3;--primary-800:#2563ebcc;--primary-900:#2563ebe6;--success-color:#059669;--success-light:#10b981;--success-lighter:#34d399;--success-dark:#047857;--success-50:#0596690d;--success-100:#0596691a;--success-200:#05966933;--warning-color:#d97706;--warning-light:#f59e0b;--warning-lighter:#fbbf24;--warning-dark:#b45309;--warning-50:#d977060d;--warning-100:#d977061a;--warning-200:#d9770633;--danger-color:#dc2626;--danger-light:#ef4444;--danger-lighter:#f87171;--danger-dark:#b91c1c;--danger-50:#dc26260d;--danger-100:#dc26261a;--danger-200:#dc262633;--error-color:#991b1b;--error-light:#dc2626;--error-lighter:#ef4444;--error-dark:#7f1d1d;--error-50:#991b1b0d;--error-100:#991b1b1a;--error-200:#991b1b33;--info-color:#0ea5e9;--info-light:#38bdf8;--info-lighter:#7dd3fc;--info-dark:#0284c7;--info-50:#0ea5e90d;--info-100:#0ea5e91a;--info-200:#0ea5e933;--purple-color:#7c3aed;--purple-light:#8b5cf6;--purple-lighter:#a78bfa;--purple-dark:#5b21b6;--purple-50:#7c3aed0d;--purple-100:#7c3aed1a;--purple-200:#7c3aed33;--purple-500:#7c3aed;--purple-800:#5b21b6;--gray-50:#f9fafb;--gray-100:#f3f4f6;--gray-200:#e5e7eb;--gray-300:#d1d5db;--gray-400:#9ca3af;--gray-500:#6b7280;--gray-600:#4b5563;--gray-700:#374151;--gray-800:#1f2937;--gray-900:#111827;--text-primary:#1f2937;--text-secondary:#6b7280;--text-muted:#9ca3af;--text-inverse:#fff;--text-link:var(--primary-color);--text-link-hover:var(--primary-dark);--background-primary:#fff;--background-secondary:#f9fafb;--background-tertiary:#f3f4f6;--background-overlay:#00000080;--background-hover:#f8fafc;--background-active:#f1f5f9;--border-color:#e5e7eb;--border-light:#f3f4f6;--border-dark:#d1d5db;--border-focus:var(--primary-color);--gradient-primary:linear-gradient(135deg,var(--primary-color) 0%,var(--primary-light) 100%);--gradient-primary-soft:linear-gradient(135deg,var(--primary-100) 0%,var(--primary-200) 100%);--gradient-primary-vibrant:linear-gradient(135deg,var(--primary-dark) 0%,var(--primary-color) 50%,var(--primary-light) 100%);--gradient-success:linear-gradient(135deg,var(--success-color) 0%,var(--success-light) 100%);--gradient-success-soft:linear-gradient(135deg,var(--success-100) 0%,var(--success-200) 100%);--gradient-warning:linear-gradient(135deg,var(--warning-color) 0%,var(--warning-light) 100%);--gradient-warning-soft:linear-gradient(135deg,var(--warning-100) 0%,var(--warning-200) 100%);--gradient-danger:linear-gradient(135deg,var(--danger-color) 0%,var(--danger-light) 100%);--gradient-danger-soft:linear-gradient(135deg,var(--danger-100) 0%,var(--danger-200) 100%);--gradient-purple:linear-gradient(135deg,var(--purple-color) 0%,var(--purple-light) 100%);--gradient-purple-soft:linear-gradient(135deg,var(--purple-100) 0%,var(--purple-200) 100%);--gradient-info:linear-gradient(135deg,var(--info-color) 0%,var(--info-light) 100%);--gradient-info-soft:linear-gradient(135deg,var(--info-100) 0%,var(--info-200) 100%);--gradient-glass:linear-gradient(135deg,#ffffff1a,#ffffff0d);--gradient-glass-dark:linear-gradient(135deg,#0000001a,#0000000d);--gradient-rainbow:linear-gradient(135deg,#667eea,#764ba2 25%,#f093fb 50%,#f5576c 75%,#4facfe);--gradient-sunset:linear-gradient(135deg,#ff9a9e,#fecfef 50%,#fecfef);--gradient-ocean:linear-gradient(135deg,#667eea,#764ba2);--shadow-xs:0 1px 2px 0 #0000000d;--shadow-sm:0 1px 3px 0 #0000001a,0 1px 2px 0 #0000000f;--shadow-2xl:0 25px 50px -12px #00000040;--shadow-3xl:0 35px 60px -12px #0000004d;--shadow-inner:inset 0 2px 4px 0 #0000000f;--animation-spin:spin 0.8s linear infinite;--animation-pulse:pulse 2s cubic-bezier(0.4,0,0.6,1) infinite;--animation-bounce:bounce 1s infinite;--shadow-focus:0 0 0 3px var(--primary-100);--shadow-focus-danger:0 0 0 3px var(--danger-100);--shadow-focus-success:0 0 0 3px var(--success-100);--shadow-focus-warning:0 0 0 3px var(--warning-100);--shadow-glow:0 0 20px #2563eb4d;--shadow-glow-success:0 0 20px #0596694d;--shadow-glow-danger:0 0 20px #dc26264d;--shadow-glow-warning:0 0 20px #d977064d;--shadow-colored:0 10px 25px -5px var(--primary-200);--shadow-neumorphism:8px 8px 16px #0000001a,-8px -8px 16px #fffc;--radius-xs:2px;--radius-md:6px;--radius-lg:8px;--radius-xl:12px;--radius-2xl:16px;--radius-3xl:24px;--radius-full:9999px;--spacing-xs:0.25rem;--spacing-sm:0.5rem;--spacing-md:1rem;--spacing-lg:1.5rem;--spacing-xl:2rem;--spacing-2xl:3rem;--spacing-3xl:4rem;--font-family-sans:-apple-system,BlinkMacSystemFont,"Segoe UI","Roboto","Oxygen","Ubuntu","Cantarell","Fira Sans","Droid Sans","Helvetica Neue",sans-serif;--font-family-mono:"SFMono-Regular",Consolas,"Liberation Mono",Menlo,Courier,monospace;--font-size-xs:0.75rem;--font-size-sm:0.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-size-4xl:2.25rem;--font-weight-light:300;--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;--transition-normal:all 0.2s ease;--transition-bounce:all 0.3s cubic-bezier(0.68,-0.55,0.265,1.55);--transition-elastic:all 0.4s cubic-bezier(0.175,0.885,0.32,1.275);--transition-smooth:all 0.25s cubic-bezier(0.4,0,0.2,1);--transition-spring:all 0.35s cubic-bezier(0.34,1.56,0.64,1);--transition-colors:color 0.2s ease,background-color 0.2s ease,border-color 0.2s ease;--transition-transform:transform 0.2s ease;--transition-opacity:opacity 0.2s ease;--transition-shadow:box-shadow 0.2s ease;--z-dropdown:1000;--z-sticky:1020;--z-fixed:1030;--z-modal-backdrop:1040;--z-modal:1050;--z-popover:1060;--z-tooltip:1070;--z-toast:1080}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f9fafb;background-color:var(--background-secondary);color:#1f2937;color:var(--text-primary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-family:var(--font-family-sans);font-size:1rem;font-size:var(--font-size-base);line-height:1.5;line-height:var(--line-height-normal);margin:0;padding:0}.btn{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid #0000;border-radius:6px;font-size:.875rem;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);gap:.5rem;gap:var(--spacing-sm);letter-spacing:.025em;line-height:1;min-width:120px;padding:.75rem 1.5rem;transform-origin:center;transition:all .25s cubic-bezier(.4,0,.2,1);transition:var(--transition-smooth);-webkit-user-select:none;user-select:none}.btn:before{background:linear-gradient(90deg,#0000,#ffffff4d,#0000);transition:all .15s ease;transition:var(--transition-fast);z-index:1}.btn:after{background:#fff3;border-radius:50%;content:"";height:0;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);transition:width .3s ease,height .3s ease;width:0;z-index:0}.btn:active:after{height:300px;width:300px}.btn:focus{box-shadow:0 0 0 3px #2563eb1a;box-shadow:var(--shadow-focus);outline:none;transform:scale(1.02)}.btn:disabled{filter:grayscale(.3);transform:none!important}.btn:disabled:after,.btn:disabled:before{display:none}.btn>*{position:relative;z-index:2}.btn-primary{background:linear-gradient(135deg,#2563eb,#3b82f6);box-shadow:0 1px 3px 0 #0000001a,0 1px 2px 0 #0000000f;box-shadow:var(--shadow-sm);color:var(--text-inverse)}.btn-primary:hover:not(:disabled){box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d,0 0 20px #2563eb4d;box-shadow:var(--shadow-lg),var(--shadow-glow);transform:translateY(-2px) scale(1.02)}.btn-primary:focus{box-shadow:0 0 0 3px #2563eb1a,0 0 20px #2563eb4d;box-shadow:var(--shadow-focus),var(--shadow-glow)}.btn-success{background:linear-gradient(135deg,#059669,#10b981);box-shadow:0 1px 3px 0 #0000001a,0 1px 2px 0 #0000000f;box-shadow:var(--shadow-sm);color:var(--text-inverse)}.btn-success:hover:not(:disabled){box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d,0 0 20px #0596694d;box-shadow:var(--shadow-lg),var(--shadow-glow-success);transform:translateY(-2px) scale(1.02)}.btn-success:focus{box-shadow:0 0 0 3px #0596691a,0 0 20px #0596694d;box-shadow:var(--shadow-focus-success),var(--shadow-glow-success)}.btn-warning{background:linear-gradient(135deg,#d97706,#f59e0b);box-shadow:0 1px 3px 0 #0000001a,0 1px 2px 0 #0000000f;box-shadow:var(--shadow-sm);color:var(--text-inverse)}.btn-warning:hover:not(:disabled){box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d,0 0 20px #d977064d;box-shadow:var(--shadow-lg),var(--shadow-glow-warning);transform:translateY(-2px) scale(1.02)}.btn-warning:focus{box-shadow:0 0 0 3px #d977061a,0 0 20px #d977064d;box-shadow:var(--shadow-focus-warning),var(--shadow-glow-warning)}.btn-danger{background:linear-gradient(135deg,#dc2626,#ef4444);box-shadow:0 1px 3px 0 #0000001a,0 1px 2px 0 #0000000f;box-shadow:var(--shadow-sm);color:var(--text-inverse)}.btn-danger:hover:not(:disabled){box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d,0 0 20px #dc26264d;box-shadow:var(--shadow-lg),var(--shadow-glow-danger);transform:translateY(-2px) scale(1.02)}.btn-danger:focus{box-shadow:0 0 0 3px #dc26261a,0 0 20px #dc26264d;box-shadow:var(--shadow-focus-danger),var(--shadow-glow-danger)}.btn-info{background:linear-gradient(135deg,#0ea5e9,#38bdf8);box-shadow:0 1px 3px 0 #0000001a,0 1px 2px 0 #0000000f;box-shadow:var(--shadow-sm);color:var(--text-inverse)}.btn-info:hover:not(:disabled){box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d,0 0 20px #2563eb4d;box-shadow:var(--shadow-lg),var(--shadow-glow);transform:translateY(-2px) scale(1.02)}.btn-info:focus{box-shadow:0 0 0 3px #2563eb1a,0 0 20px #2563eb4d;box-shadow:var(--shadow-focus),var(--shadow-glow)}.btn-secondary{background:#fff;background:var(--background-primary);border-color:#e5e7eb;border-color:var(--border-color);box-shadow:0 1px 3px 0 #0000001a,0 1px 2px 0 #0000000f;box-shadow:var(--shadow-sm);color:#1f2937;color:var(--text-primary)}.btn-secondary:hover:not(:disabled){background:#f8fafc;background:var(--background-hover);border-color:#d1d5db;border-color:var(--border-dark);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn-outline{background:#0000;border-color:#2563eb;border-color:var(--primary-color);color:#2563eb;color:var(--primary-color)}.btn-outline:hover:not(:disabled){background:#2563eb;background:var(--primary-color);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;box-shadow:var(--shadow-md);color:#fff;color:var(--text-inverse);transform:translateY(-1px)}.btn-sm{font-size:.75rem;font-size:var(--font-size-xs);min-width:80px;padding:.5rem 1rem}.btn-lg{font-size:1.125rem;font-size:var(--font-size-lg);min-width:160px;padding:1rem 2rem}.status{border-radius:9999px;box-shadow:0 1px 3px 0 #0000001a,0 1px 2px 0 #0000000f;color:#1f2937;color:var(--text-primary);font-size:.75rem;font-weight:600}.status:hover{box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.status-pending{background:linear-gradient(135deg,#d97706,#f59e0b);background:var(--gradient-warning)}.status-approved,.status-pending{color:#fff;color:var(--text-inverse)}.status-approved{background:linear-gradient(135deg,#059669,#10b981);background:var(--gradient-success)}.status-rejected{background:linear-gradient(135deg,#dc2626,#ef4444);background:var(--gradient-danger)}.status-confirmed,.status-rejected{color:#fff;color:var(--text-inverse)}.status-confirmed{background:linear-gradient(135deg,#0ea5e9,#38bdf8);background:var(--gradient-info)}.status-completed{background:linear-gradient(135deg,#059669,#10b981);background:var(--gradient-success)}.status-cancelled,.status-completed{color:#fff;color:var(--text-inverse)}.status-cancelled{background:linear-gradient(135deg,#dc2626,#ef4444);background:var(--gradient-danger)}.status-rescheduled{background:linear-gradient(135deg,#d97706,#f59e0b);background:var(--gradient-warning);color:#fff;color:var(--text-inverse)}.badge{border-radius:4px;border-radius:var(--radius-sm);font-size:.75rem;font-weight:600;padding:.25rem .5rem;transition:all .2s ease}.badge-primary{background:#2563eb;background:var(--primary-color)}.badge-primary,.badge-secondary{color:#fff;color:var(--text-inverse)}.badge-secondary{background:#6b7280;background:var(--gray-500)}.bg-secondary{background-color:#6b7280!important;background-color:var(--gray-500)!important;color:#fff!important;color:var(--text-inverse)!important}.me-1{margin-right:.25rem!important}.me-2{margin-right:.5rem!important}.me-3{margin-right:1rem!important}.badge-success{background:#059669;background:var(--success-color)}.badge-danger,.badge-success{color:#fff;color:var(--text-inverse)}.badge-danger{background:#dc2626;background:var(--danger-color)}.badge-warning{background:#d97706;background:var(--warning-color)}.badge-info,.badge-warning{color:#fff;color:var(--text-inverse)}.badge-info{background:#0ea5e9;background:var(--info-color)}.data-table-wrapper,.table-wrapper{background:#fff;background:var(--background-primary);border:1px solid #e5e7eb;border:1px solid var(--border-color);border-radius:6px;border-radius:var(--radius-md);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;box-shadow:var(--shadow-md);margin:1.5rem 0;overflow-x:auto;padding-right:3px;scrollbar-color:#2563eb #f1f1f1;scrollbar-color:var(--primary-color) #f1f1f1;scrollbar-width:thin}.data-table-wrapper::-webkit-scrollbar,.table-wrapper::-webkit-scrollbar{height:8px}.data-table-wrapper::-webkit-scrollbar-track,.table-wrapper::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.data-table-wrapper::-webkit-scrollbar-thumb,.table-wrapper::-webkit-scrollbar-thumb{background:#2563eb;background:var(--primary-color);border-radius:4px}.data-table-wrapper::-webkit-scrollbar-thumb:hover,.table-wrapper::-webkit-scrollbar-thumb:hover{background:#2563eb}.table{background:#fff;background:var(--background-primary);border-collapse:collapse;box-sizing:border-box;font-size:.9rem;min-width:800px;table-layout:auto;width:100%}.table td,.table th{border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--border-color);padding:.75rem .5rem;text-align:center;text-overflow:ellipsis;vertical-align:middle;white-space:nowrap}.table .content-cell{word-wrap:break-word;max-width:300px;min-width:200px;text-overflow:clip;white-space:normal;word-break:break-word}.table .content-wrapper{line-height:1.4;padding:.25rem 0;text-align:left}.table th{background:linear-gradient(135deg,#f9fafb,#f1f5f9);background:linear-gradient(135deg,var(--background-secondary) 0,#f1f5f9 100%);border-bottom:2px solid #2563eb;border-bottom:2px solid var(--primary-color);color:#1f2937;color:var(--text-primary);font-size:.8rem;font-weight:700;font-weight:var(--font-weight-bold);letter-spacing:.5px;position:-webkit-sticky;position:sticky;text-transform:uppercase;top:0;z-index:1020;z-index:var(--z-sticky)}.modal-overlay~* .table th,body.modal-open .table th{z-index:1}.table td:last-child,.table th:last-child{max-width:none;min-width:150px;overflow:visible;text-overflow:clip;white-space:nowrap}.table .action-buttons{align-items:center;display:flex;flex-wrap:nowrap;gap:.5rem;gap:var(--spacing-sm);justify-content:center}.table tbody tr{border-left:3px solid #0000;transition:all .2s ease;transition:var(--transition-normal)}.table tbody tr:hover{background:#f8fafc;background:var(--background-hover);border-left-color:#2563eb;border-left-color:var(--primary-color);box-shadow:0 1px 3px 0 #0000001a,0 1px 2px 0 #0000000f;box-shadow:var(--shadow-sm);transform:translateX(2px)}.table tbody tr:nth-child(2n){background:#f9fafb;background:var(--background-secondary)}.table tbody tr:nth-child(2n):hover{background:#f8fafc;background:var(--background-hover)}.form-group{margin-bottom:1.5rem;margin-bottom:var(--spacing-lg)}.form-label{font-size:.875rem;font-size:var(--font-size-sm);font-weight:500;font-weight:var(--font-weight-medium);margin-bottom:.5rem;margin-bottom:var(--spacing-sm)}.form-control,.form-label{color:#1f2937;color:var(--text-primary);display:block}.form-control{background:#fff;background:var(--background-primary);border:1px solid #e5e7eb;border:1px solid var(--border-color);border-radius:6px;border-radius:var(--radius-md);box-shadow:0 1px 2px 0 #0000000d;box-shadow:var(--shadow-xs);font-size:1rem;font-size:var(--font-size-base);line-height:1.5;line-height:var(--line-height-normal);padding:.75rem 1rem;transition:all .2s ease;transition:var(--transition-normal);width:100%}.form-control:focus{border-color:#2563eb;border-color:var(--border-focus);box-shadow:0 0 0 3px #2563eb1a;box-shadow:var(--shadow-focus);outline:none}.form-control:disabled{background:#f3f4f6;background:var(--background-tertiary);cursor:not-allowed;opacity:.6}.form-grid-compact{display:flex;flex-direction:column;width:100%}.form-grid-compact,.form-row{gap:1rem;gap:var(--spacing-md)}.form-row{grid-gap:1rem;grid-gap:var(--spacing-md)}.form-row .form-group{display:flex;flex-direction:column;margin-bottom:0}.form-row .form-group label{color:#1f2937;color:var(--text-primary);font-size:.875rem;font-size:var(--font-size-sm);font-weight:500;font-weight:var(--font-weight-medium);margin-bottom:.25rem;margin-bottom:var(--spacing-xs)}.checkbox-group{align-items:center;grid-column:1/-1;justify-content:flex-start}.checkbox-label{align-items:center;color:#1f2937;color:var(--text-primary);cursor:pointer;display:flex;font-weight:500;font-weight:var(--font-weight-medium);gap:.5rem;gap:var(--spacing-sm)}.checkbox-label input[type=checkbox]{height:16px;margin:0;width:16px}@media (max-width:768px){.form-row{gap:.5rem;gap:var(--spacing-sm);grid-template-columns:1fr}.form-row .form-group{margin-bottom:.5rem;margin-bottom:var(--spacing-sm)}}@media (max-width:480px){.form-grid-compact{gap:.5rem;gap:var(--spacing-sm)}.form-row{gap:.25rem;gap:var(--spacing-xs)}}.history-logs-container{background:#f9fafb;background:var(--background-secondary);border:1px solid #e5e7eb;border:1px solid var(--border-color);border-radius:8px;border-radius:var(--radius-lg);box-shadow:0 1px 3px 0 #0000001a,0 1px 2px 0 #0000000f;box-shadow:var(--shadow-sm);max-height:300px;overflow-y:auto;scrollbar-color:#2563eb #f3f4f6;scrollbar-color:var(--primary-color) var(--background-tertiary);scrollbar-width:thin}.history-logs-container::-webkit-scrollbar{width:6px}.history-logs-container::-webkit-scrollbar-track{background:#f3f4f6;background:var(--background-tertiary);border-radius:3px}.history-logs-container::-webkit-scrollbar-thumb{background:#2563eb;background:var(--primary-color);border-radius:3px}.history-logs-container::-webkit-scrollbar-thumb:hover{background:#1d4ed8;background:var(--primary-dark)}.history-logs-list{display:flex;flex-direction:column}.history-log-item{background:#fff;background:var(--background-primary);border-bottom:1px solid #f3f4f6;border-bottom:1px solid var(--border-light);overflow:hidden;padding:1.5rem 2rem;padding:var(--spacing-lg) var(--spacing-xl);position:relative;transition:all .2s ease;transition:var(--transition-normal)}.history-log-item:last-child{border-bottom:none}.history-log-item:nth-child(2n){background:#f9fafb;background:var(--background-secondary)}.history-log-item:hover{background:#f8fafc;background:var(--background-hover);border-left:4px solid #2563eb;border-left:4px solid var(--primary-color);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;box-shadow:var(--shadow-md);transform:translateX(4px)}.history-log-item:before{background:#2563eb;background:var(--primary-color);content:"";height:100%;left:0;position:absolute;top:0;transform:scaleY(0);transition:transform all .2s ease;transition:transform var(--transition-normal);width:3px}.history-log-item:hover:before{transform:scaleY(1)}.history-log-meta{align-items:center;display:flex;gap:1rem;gap:var(--spacing-md);margin-bottom:.5rem;margin-bottom:var(--spacing-sm)}.history-log-meta .badge{border-radius:9999px;border-radius:var(--radius-full);box-shadow:0 1px 2px 0 #0000000d;box-shadow:var(--shadow-xs);font-size:.75rem;font-size:var(--font-size-xs);font-weight:600;font-weight:var(--font-weight-semibold);letter-spacing:.5px;padding:.25rem .5rem;padding:var(--spacing-xs) var(--spacing-sm);text-transform:uppercase}.history-log-meta .text-muted{align-items:center;color:#6b7280;color:var(--text-secondary);display:flex;font-size:.875rem;font-size:var(--font-size-sm);gap:.25rem;gap:var(--spacing-xs)}.history-log-meta .text-muted i{color:#2563eb;color:var(--primary-color);opacity:.7}.history-log-content{word-wrap:break-word;color:#1f2937;color:var(--text-primary);font-size:1rem;font-size:var(--font-size-base);line-height:1.75;line-height:var(--line-height-relaxed);margin-top:.5rem;margin-top:var(--spacing-sm);padding:.5rem 0;padding:var(--spacing-sm) 0;word-break:break-word}.history-log-recorder{background:#f3f4f6;background:var(--background-tertiary);border:1px solid #f3f4f6;border:1px solid var(--border-light);border-radius:4px;border-radius:var(--radius-sm);color:var(--text-tertiary);font-size:.75rem;font-size:var(--font-size-xs);font-weight:500;font-weight:var(--font-weight-medium);padding:.25rem .5rem;padding:var(--spacing-xs) var(--spacing-sm)}.history-log-header{align-items:flex-start;display:flex;gap:1rem;gap:var(--spacing-md);justify-content:space-between;margin-bottom:.5rem;margin-bottom:var(--spacing-sm)}@media (max-width:768px){.history-log-item{padding:1rem 1.5rem;padding:var(--spacing-md) var(--spacing-lg)}.history-log-header{flex-direction:column;gap:.5rem;gap:var(--spacing-sm)}.history-log-meta{flex-wrap:wrap;gap:.5rem;gap:var(--spacing-sm)}}.filter-controls{margin-bottom:1.5rem}.search-input{background:#fff;background:var(--background-primary);border:1px solid #e5e7eb;border:1px solid var(--border-color);border-radius:var(--radius-md);color:#1f2937;color:var(--text-primary);max-width:300px;padding:.625rem 1rem;transition:all .2s ease;transition:var(--transition-normal)}.search-input:focus{border-color:#2563eb;border-color:var(--primary-color);box-shadow:0 0 0 3px #2c83f61a}.id-filter,.search-filter,.status-filter{background:var(--background-primary);border:1px solid #e5e7eb;border-radius:6px;color:#1f2937;color:var(--text-primary);cursor:pointer;transition:all .2s ease;transition:var(--transition-normal)}.id-filter:focus,.search-filter:focus,.status-filter:focus{border-color:#2563eb;border-color:var(--primary-color);box-shadow:0 0 0 3px #2c83f61a;outline:none}.date-filters{align-items:center;display:flex;gap:.5rem}.date-input{background:#fff;background:var(--background-primary);border:1px solid #e5e7eb;border:1px solid var(--border-color);border-radius:6px;border-radius:var(--radius-md);color:#1f2937;color:var(--text-primary);padding:.625rem;transition:all .2s ease;transition:var(--transition-normal)}.date-input:focus{border-color:#2563eb;border-color:var(--primary-color);box-shadow:0 0 0 3px #2c83f61a;outline:none}.list-header{background:var(--background-primary);border:1px solid #e5e7eb;border:1px solid var(--border-color);border-radius:6px;border-radius:var(--radius-md);margin-bottom:1.5rem;padding:1.5rem}.list-header h1{background:linear-gradient(135deg,#2563eb,#1a5ebf);background:linear-gradient(135deg,var(--primary-color) 0,#1a5ebf 100%);color:#1f2937;font-size:1.5rem;font-weight:var(--font-weight-bold)}.card{background:#fff;background:var(--background-primary);border:1px solid #f3f4f6;border:1px solid var(--border-light);border-radius:8px;border-radius:var(--radius-lg);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;box-shadow:var(--shadow-md);overflow:hidden;transition:all .2s ease;transition:var(--transition-normal)}.card:hover{box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;box-shadow:var(--shadow-lg);transform:translateY(-2px)}.card-header{background:#f9fafb;background:var(--background-secondary);border-bottom:1px solid #f3f4f6;border-bottom:1px solid var(--border-light)}.card-body,.card-footer,.card-header{padding:1.5rem;padding:var(--spacing-lg)}.card-footer{background:#f9fafb;background:var(--background-secondary);border-top:1px solid #f3f4f6;border-top:1px solid var(--border-light)}.modal-overlay{animation:modalOverlayFadeIn .3s ease-out;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0009;z-index:1050;z-index:var(--z-modal)}.modal-content{animation:modalSlideIn .4s cubic-bezier(.16,1,.3,1);background:var(--background-primary);border:1px solid #f3f4f6;border:1px solid var(--border-light);border-radius:16px;box-shadow:0 25px 50px -12px #00000040,0 0 0 1px #ffffff1a;max-width:min(90vw,800px);overflow:hidden;position:relative}.modal-content.customer-details-modal{max-width:900px;width:100%}.modal-header{background:linear-gradient(135deg,#fff,#f9fafb);background:linear-gradient(135deg,var(--background-primary) 0,var(--background-secondary) 100%);border-bottom:1px solid #f3f4f6;border-bottom:1px solid var(--border-light);padding:24px 32px 16px}.modal-header h2{color:#1f2937;letter-spacing:-.025em}.modal-header .btn{align-items:center;border-radius:50%;display:flex;font-size:18px;height:32px;justify-content:center;line-height:1;min-width:auto;padding:0;transition:all .2s ease;width:32px}.modal-header .btn:hover{background:#dc2626;background:var(--danger-color);color:#fff;transform:scale(1.1)}.modal-body{max-height:calc(90vh - 140px);padding:24px 32px}.modal-actions{background:#f9fafb;background:var(--background-secondary);border-top:1px solid #f3f4f6;bottom:0;padding:16px 32px 24px;position:-webkit-sticky;position:sticky}.tooltip{display:inline-block;position:relative}.tooltip-content{background:#111827;background:var(--gray-900);border-radius:6px;border-radius:var(--radius-md);bottom:125%;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;box-shadow:var(--shadow-lg);color:#fff;color:var(--text-inverse);font-size:.75rem;font-size:var(--font-size-xs);font-weight:500;font-weight:var(--font-weight-medium);opacity:0;padding:.5rem 1rem;padding:var(--spacing-sm) var(--spacing-md);transition:all .2s ease;transition:var(--transition-normal);visibility:hidden;white-space:nowrap;z-index:1070;z-index:var(--z-tooltip)}.tooltip-content,.tooltip-content:after{left:50%;position:absolute;transform:translateX(-50%)}.tooltip-content:after{border:5px solid #0000;border-top:5px solid var(--gray-900);content:"";top:100%}.tooltip:hover .tooltip-content{opacity:1;visibility:visible}.loading{animation:spin .8s linear infinite;animation:var(--animation-spin);border:2px solid #f3f4f6;border-radius:50%;border-top-color:#2563eb;border:2px solid var(--border-light);border-top-color:var(--primary-color);display:inline-block;height:20px;width:20px}.shimmer{animation:shimmer 1.5s infinite;background:linear-gradient(90deg,#f9fafb 25%,#f3f4f6 50%,#f9fafb 75%);background:linear-gradient(90deg,var(--background-secondary) 25%,var(--background-tertiary) 50%,var(--background-secondary) 75%);background-size:200% 100%}@media (max-width:1024px){.table{min-width:600px}.btn{min-width:100px;padding:.625rem 1.25rem}.card{margin:.5rem;margin:var(--spacing-sm)}}@media (max-width:768px){.table{font-size:.75rem;font-size:var(--font-size-xs);min-width:800px}.table td,.table th{font-size:.8rem;padding:.5rem .25rem}.table td:first-child,.table td:nth-child(2),.table th:first-child,.table th:nth-child(2){width:80px}.table td:nth-child(3),.table th:nth-child(3){width:100px}.table td:nth-child(4),.table td:nth-child(5),.table th:nth-child(4),.table th:nth-child(5){width:80px}.table td:nth-child(6),.table th:nth-child(6){width:100px}.table td:nth-child(7),.table th:nth-child(7){width:80px}.table td:nth-child(8),.table th:nth-child(8){min-width:150px;width:150px}.filter-controls{align-items:stretch;flex-direction:column;gap:.5rem}.id-filter,.search-filter,.search-input,.status-filter{max-width:100%;min-width:auto}.date-filters{flex-direction:column;gap:.5rem}.list-header{align-items:stretch;flex-direction:column;gap:1rem}.list-header h1{font-size:1.25rem;text-align:center}.btn{font-size:.75rem;font-size:var(--font-size-xs);min-width:80px;padding:.5rem 1rem}.modal-content{border-radius:12px;margin:1rem;margin:var(--spacing-md);max-width:calc(100vw - 2rem)}.modal-header{padding:16px 20px 12px}.modal-header h2{font-size:1.25rem}.modal-body{padding:16px 20px}.modal-actions{padding:12px 20px 16px}}@media (max-width:480px){.table-wrapper{overflow-x:auto}.btn{margin-bottom:.5rem;margin-bottom:var(--spacing-sm);width:100%}.status{font-size:.625rem;min-width:60px}}.page-container{background:#fff;background:var(--background-primary);border:1px solid #f3f4f6;border:1px solid var(--border-light);border-radius:12px;border-radius:var(--radius-xl);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;box-shadow:var(--shadow-lg);margin:0 auto;max-width:1400px;overflow:hidden;padding:2rem;padding:var(--spacing-xl);position:relative}.page-container:before{background:linear-gradient(135deg,#2563eb,#3b82f6);background:var(--gradient-primary);content:"";height:4px;left:0;position:absolute;right:0;top:0}.page-title{color:#1f2937;color:var(--text-primary);font-size:1.5rem;font-size:var(--font-size-2xl);font-weight:700;font-weight:var(--font-weight-bold);margin-bottom:2rem;margin-bottom:var(--spacing-xl);padding-bottom:1.5rem;padding-bottom:var(--spacing-lg);position:relative;text-align:center}.page-title:after{background:linear-gradient(135deg,#2563eb,#3b82f6);background:var(--gradient-primary);border-radius:9999px;border-radius:var(--radius-full);bottom:0;content:"";height:3px;left:50%;position:absolute;transform:translateX(-50%);width:120px}.toolbar{background:#f9fafb;background:var(--background-secondary);border:1px solid #f3f4f6;border:1px solid var(--border-light);border-radius:8px;border-radius:var(--radius-lg);justify-content:space-between;margin-bottom:2rem;margin-bottom:var(--spacing-xl);padding:1.5rem;padding:var(--spacing-lg)}.toolbar,.toolbar-left,.toolbar-right{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;gap:var(--spacing-md)}.stats-grid{grid-gap:1.5rem;grid-gap:var(--spacing-lg);gap:1.5rem;gap:var(--spacing-lg);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:2rem;margin-bottom:var(--spacing-xl)}.stat-card{background:#fff;background:var(--background-primary);border:1px solid #f3f4f6;border:1px solid var(--border-light);border-radius:8px;border-radius:var(--radius-lg);box-shadow:0 1px 2px 0 #0000000d;box-shadow:var(--shadow-xs);overflow:hidden;padding:1.5rem;padding:var(--spacing-lg);position:relative;text-align:center;transition:all .2s ease;transition:var(--transition-normal)}.stat-card:hover{box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;box-shadow:var(--shadow-md);transform:translateY(-2px)}.stat-card:before{background:linear-gradient(135deg,#2563eb,#3b82f6);background:var(--gradient-primary);content:"";height:3px;left:0;position:absolute;right:0;top:0}.stat-card-value{color:#2563eb;color:var(--primary-color);font-size:1.5rem;font-size:var(--font-size-2xl);font-weight:700;font-weight:var(--font-weight-bold);margin-bottom:.5rem;margin-bottom:var(--spacing-sm)}.stat-card-label{color:#6b7280;color:var(--text-secondary);font-weight:500;font-weight:var(--font-weight-medium)}.add-button,.stat-card-label{font-size:.875rem;font-size:var(--font-size-sm)}.add-button{align-items:center;background:linear-gradient(135deg,#2563eb,#3b82f6);background:var(--gradient-primary);border:none;border-radius:6px;border-radius:var(--radius-md);box-shadow:0 1px 2px 0 #0000000d;box-shadow:var(--shadow-xs);color:#fff;color:var(--text-inverse);cursor:pointer;display:flex;font-weight:600;font-weight:var(--font-weight-semibold);gap:.5rem;gap:var(--spacing-sm);padding:1rem 2rem;padding:var(--spacing-md) var(--spacing-xl);transition:all .2s ease;transition:var(--transition-normal)}.add-button:hover{box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f,0 0 20px #2563eb4d;box-shadow:var(--shadow-md),var(--shadow-glow);transform:translateY(-2px)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-primary{color:#1f2937;color:var(--text-primary)}.text-secondary{color:#6b7280;color:var(--text-secondary)}.text-muted{color:#9ca3af;color:var(--text-muted)}.text-success{color:#059669;color:var(--success-color)}.text-warning{color:#d97706;color:var(--warning-color)}.text-danger{color:#dc2626;color:var(--danger-color)}.text-info{color:#0ea5e9;color:var(--info-color)}.bg-primary{background-color:#fff;background-color:var(--background-primary);color:#fff}.bg-secondary{background-color:#f9fafb;background-color:var(--background-secondary);color:#fff}.bg-tertiary{background-color:#f3f4f6;background-color:var(--background-tertiary);color:var(--color-gray-800)}.bg-success{background-color:#059669;background-color:var(--success-color);color:#fff}.bg-danger{background-color:#dc2626;background-color:var(--danger-color);color:#fff}.bg-warning{background-color:#d97706;background-color:var(--warning-color);color:#1f2937;color:var(--gray-800)}.bg-info{background-color:#0ea5e9;background-color:var(--info-color);color:#fff}.bg-light{background-color:#f3f4f6;background-color:var(--gray-100);color:#1f2937;color:var(--gray-800)}.bg-dark{background-color:#1f2937;background-color:var(--gray-800);color:#fff}.m-0{margin:0}.mt-1{margin-top:.25rem;margin-top:var(--spacing-xs)}.mt-2{margin-top:.5rem;margin-top:var(--spacing-sm)}.mt-3{margin-top:1rem;margin-top:var(--spacing-md)}.mt-4{margin-top:1.5rem;margin-top:var(--spacing-lg)}.mb-1{margin-bottom:.25rem;margin-bottom:var(--spacing-xs)}.mb-2{margin-bottom:.5rem;margin-bottom:var(--spacing-sm)}.mb-3{margin-bottom:1rem;margin-bottom:var(--spacing-md)}.mb-4{margin-bottom:1.5rem;margin-bottom:var(--spacing-lg)}.p-0{padding:0}.pt-1{padding-top:.25rem;padding-top:var(--spacing-xs)}.pt-2{padding-top:.5rem;padding-top:var(--spacing-sm)}.pt-3{padding-top:1rem;padding-top:var(--spacing-md)}.pt-4{padding-top:1.5rem;padding-top:var(--spacing-lg)}.pb-1{padding-bottom:.25rem;padding-bottom:var(--spacing-xs)}.pb-2{padding-bottom:.5rem;padding-bottom:var(--spacing-sm)}.pb-3{padding-bottom:1rem;padding-bottom:var(--spacing-md)}.pb-4{padding-bottom:1.5rem;padding-bottom:var(--spacing-lg)}.d-none{display:none}.d-block{display:block}.d-inline{display:inline}.d-inline-block{display:inline-block}.d-flex{display:flex}.d-inline-flex{display:inline-flex}.flex-row{flex-direction:row}.flex-column{flex-direction:column}.justify-start{justify-content:flex-start}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-between{justify-content:space-between}.align-start{align-items:flex-start}.align-center{align-items:center}.align-end{align-items:flex-end}.flex-1{flex:1 1}.rounded-none{border-radius:0}.rounded-sm{border-radius:4px;border-radius:var(--radius-sm)}.rounded{border-radius:6px;border-radius:var(--radius-md)}.rounded-lg{border-radius:8px;border-radius:var(--radius-lg)}.rounded-xl{border-radius:12px;border-radius:var(--radius-xl)}.rounded-full{border-radius:9999px;border-radius:var(--radius-full)}.shadow-none{box-shadow:none}.shadow-sm{box-shadow:0 1px 3px 0 #0000001a,0 1px 2px 0 #0000000f;box-shadow:var(--shadow-sm)}.shadow{box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;box-shadow:var(--shadow-lg)}.shadow-xl{box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;box-shadow:var(--shadow-xl)}.transition{transition:all .2s ease;transition:var(--transition-normal)}.transition-fast{transition:all .15s ease;transition:var(--transition-fast)}.transition-slow{transition:all .3s ease;transition:var(--transition-slow)}.sr-only{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}@media print{.no-print{display:none!important}.btn,.card{box-shadow:none!important}.card{border:1px solid #e5e7eb!important;border:1px solid var(--border-color)!important}}.glass{background:#ffffff1a;border:1px solid #fff3}.glass,.glass-dark{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;box-shadow:var(--shadow-lg)}.glass-dark{background:#0000001a;border:1px solid #ffffff1a}.neumorphism{background:#f9fafb;background:var(--background-secondary);border:none;box-shadow:8px 8px 16px #0000001a,-8px -8px 16px #fffc;box-shadow:var(--shadow-neumorphism)}.neumorphism:hover{box-shadow:inset 2px 2px 4px #0000001a,inset -2px -2px 4px #fffc}.glow-primary{box-shadow:0 0 20px #2563eb4d;box-shadow:var(--shadow-glow)}.glow-primary,.glow-success{animation:pulseGlow 2s infinite}.glow-success{box-shadow:0 0 20px #0596694d;box-shadow:var(--shadow-glow-success)}.glow-danger{box-shadow:0 0 20px #dc26264d;box-shadow:var(--shadow-glow-danger)}.glow-danger,.glow-warning{animation:pulseGlow 2s infinite}.glow-warning{box-shadow:0 0 20px #d977064d;box-shadow:var(--shadow-glow-warning)}.floating{animation:floating 3s ease-in-out infinite}.pulse{animation:pulse 2s infinite}.shake{animation:shake .5s}.bounce{animation:bounce 1s}.text-gradient{background:linear-gradient(135deg,#2563eb,#3b82f6);background:var(--gradient-primary);-webkit-background-clip:text;background-clip:text}.text-gradient,.text-gradient-rainbow{-webkit-text-fill-color:#0000;font-weight:700;font-weight:var(--font-weight-bold)}.text-gradient-rainbow{background:linear-gradient(135deg,#667eea,#764ba2 25%,#f093fb 50%,#f5576c 75%,#4facfe);background:var(--gradient-rainbow);-webkit-background-clip:text;background-clip:text}.gradient-text-primary{background:linear-gradient(135deg,#2563eb,#3b82f6);background:var(--gradient-primary);-webkit-background-clip:text;background-clip:text}.gradient-text-primary,.gradient-text-success{-webkit-text-fill-color:#0000;font-weight:700;font-weight:var(--font-weight-bold)}.gradient-text-success{background:linear-gradient(135deg,#059669,#10b981);background:var(--gradient-success);-webkit-background-clip:text;background-clip:text}.gradient-text-rainbow{background:linear-gradient(135deg,#667eea,#764ba2 25%,#f093fb 50%,#f5576c 75%,#4facfe);background:var(--gradient-rainbow);-webkit-background-clip:text;background-clip:text}.gradient-text-rainbow,.gradient-text-sunset{-webkit-text-fill-color:#0000;font-weight:700;font-weight:var(--font-weight-bold)}.gradient-text-sunset{background:linear-gradient(135deg,#ff9a9e,#fecfef 50%,#fecfef);background:var(--gradient-sunset);-webkit-background-clip:text;background-clip:text}.btn-glass{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffff1a;border:1px solid #fff3;color:#1f2937;color:var(--text-primary)}.btn-glass:hover:not(:disabled){background:#fff3;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;box-shadow:var(--shadow-xl);transform:translateY(-2px) scale(1.02)}.btn-neumorphism{background:#f9fafb;background:var(--background-secondary);border:none;box-shadow:8px 8px 16px #0000001a,-8px -8px 16px #fffc;box-shadow:var(--shadow-neumorphism);color:#1f2937;color:var(--text-primary)}.btn-neumorphism:hover:not(:disabled){box-shadow:inset 2px 2px 4px #0000001a,inset -2px -2px 4px #fffc}.btn-gradient{background:linear-gradient(135deg,#667eea,#764ba2 25%,#f093fb 50%,#f5576c 75%,#4facfe);background:var(--gradient-rainbow);border:none;color:#fff;color:var(--text-inverse)}.btn-gradient:hover:not(:disabled){box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;box-shadow:var(--shadow-xl);filter:brightness(1.1);transform:translateY(-2px) scale(1.05)}.card-glass{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffff1a;border:1px solid #fff3}.card-neumorphism{background:#f9fafb;background:var(--background-secondary);border:none;box-shadow:8px 8px 16px #0000001a,-8px -8px 16px #fffc;box-shadow:var(--shadow-neumorphism)}.card-gradient{background:linear-gradient(135deg,#2563eb1a,#2563eb33);background:var(--gradient-primary-soft);border:none}.form-control-glass{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3}.form-control-glass:focus{background:#ffffff26;border-color:#2563eb;border-color:var(--primary-color);box-shadow:0 0 0 3px #2563eb1a;box-shadow:var(--shadow-focus)}@keyframes pulseGlow{0%,to{opacity:1}50%{opacity:.7}}@keyframes floating{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes shake{0%,to{transform:translateX(0)}10%,30%,50%,70%,90%{transform:translateX(-5px)}20%,40%,60%,80%{transform:translateX(5px)}}@keyframes bounce{0%,20%,53%,80%,to{transform:translateZ(0)}40%,43%{transform:translate3d(0,-15px,0)}70%{transform:translate3d(0,-7px,0)}90%{transform:translate3d(0,-2px,0)}}@keyframes fadeInScale{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.animate-slide-up{animation:slideInUp .5s ease-out}.animate-slide-down{animation:slideInDown .5s ease-out}.animate-fade-scale{animation:fadeInScale .3s ease-out}.hover-lift:hover{transform:translateY(-4px)}.hover-lift:hover,.hover-scale:hover{transition:all .25s cubic-bezier(.4,0,.2,1);transition:var(--transition-smooth)}.hover-scale:hover{transform:scale(1.05)}.hover-rotate:hover{transform:rotate(5deg);transition:all .25s cubic-bezier(.4,0,.2,1);transition:var(--transition-smooth)}.cursor-not-allowed{cursor:not-allowed}.select-none{-webkit-user-select:none;user-select:none}.overflow-hidden{overflow:hidden}.overflow-auto{overflow:auto}.position-relative{position:relative}.position-absolute{position:absolute}.position-fixed{position:fixed}.z-index-1{z-index:1}.z-index-10{z-index:10}.z-index-50{z-index:50}.opacity-0{opacity:0}.opacity-50{opacity:.5}.opacity-100{opacity:1}.backdrop-blur{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.backdrop-blur-sm{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.backdrop-blur-lg{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media (prefers-color-scheme:dark){:root{--background-primary:#1f2937;--background-secondary:#111827;--background-tertiary:#374151;--text-primary:#f9fafb;--text-secondary:#d1d5db;--text-muted:#9ca3af;--border-color:#374151;--border-light:#4b5563;--border-dark:#6b7280}.glass{background:#0003;border:1px solid #ffffff1a}.neumorphism{background:#f9fafb;background:var(--background-secondary);box-shadow:8px 8px 16px #0000004d,-8px -8px 16px #ffffff0d}}.pagination-container{background:#fff;background:var(--background-primary);border:1px solid #f3f4f6;border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:0 1px 3px 0 #0000001a,0 1px 2px 0 #0000000f;box-shadow:var(--shadow-sm);gap:1.5rem;gap:var(--spacing-lg);margin-top:2rem;margin-top:var(--spacing-xl);padding:1.5rem;padding:var(--spacing-lg)}.pagination{flex-wrap:wrap;gap:var(--spacing-sm)}.pagination-btn{align-items:center;background:#f9fafb;background:var(--background-secondary);border:1px solid #e5e7eb;border:1px solid var(--border-color);border-radius:6px;border-radius:var(--radius-md);color:#6b7280;color:var(--text-secondary);display:flex;font-size:.875rem;font-size:var(--font-size-sm);font-weight:500;font-weight:var(--font-weight-medium);justify-content:center;padding:.5rem 1rem;padding:var(--spacing-sm) var(--spacing-md);text-align:center;transition:var(--transition-normal)}.pagination-btn:hover:not(:disabled){background:#2563eb;background:var(--primary-color);border-color:#2563eb;border-color:var(--primary-color);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;box-shadow:var(--shadow-md);color:var(--text-inverse);transform:translateY(-1px)}.pagination-btn:disabled{background:var(--background-disabled);color:var(--text-disabled);opacity:.5}.pagination-btn.active{background:#2563eb;background:var(--primary-color);border-color:#2563eb;border-color:var(--primary-color);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;box-shadow:var(--shadow-md);color:var(--text-inverse);font-weight:700;font-weight:var(--font-weight-bold)}.pagination-numbers{flex-wrap:wrap;gap:var(--spacing-xs)}.pagination-info{color:#6b7280;color:var(--text-secondary);font-size:.875rem;font-size:var(--font-size-sm);gap:1.5rem;gap:var(--spacing-lg);justify-content:space-between}.pagination-text{font-weight:500;font-weight:var(--font-weight-medium)}.page-jump{gap:var(--spacing-sm)}.page-input{background:#fff;background:var(--background-primary);border:1px solid #e5e7eb;border:1px solid var(--border-color);border-radius:var(--radius-sm);color:#1f2937;color:var(--text-primary);font-size:.875rem;font-size:var(--font-size-sm);padding:.25rem .5rem;padding:var(--spacing-xs) var(--spacing-sm);transition:all .2s ease;transition:var(--transition-normal)}.page-input:focus{border-color:#2563eb;border-color:var(--primary-color);box-shadow:0 0 0 3px #2563eb1a;box-shadow:0 0 0 3px var(--primary-100)}.jump-btn{background:#2563eb;background:var(--primary-color);border:1px solid #2563eb;border:1px solid var(--primary-color);border-radius:var(--radius-sm);color:var(--text-inverse);font-size:.875rem;font-size:var(--font-size-sm);font-weight:500;font-weight:var(--font-weight-medium);padding:.25rem .5rem;padding:var(--spacing-xs) var(--spacing-sm);transition:all .2s ease;transition:var(--transition-normal)}.jump-btn:hover{background:#1d4ed8;background:var(--primary-dark);border-color:#1d4ed8;border-color:var(--primary-dark);box-shadow:0 1px 3px 0 #0000001a,0 1px 2px 0 #0000000f;box-shadow:var(--shadow-sm);transform:translateY(-1px)}@media (max-width:768px){.pagination-container{padding:1rem;padding:var(--spacing-md)}.pagination,.pagination-info{flex-direction:column;gap:1rem;gap:var(--spacing-md)}.pagination-info{text-align:center}.pagination-numbers{justify-content:center}.pagination-btn{min-width:36px;padding:.25rem .5rem;padding:var(--spacing-xs) var(--spacing-sm)}}@media (max-width:480px){.pagination-numbers{max-width:100%;overflow-x:auto;padding:.25rem 0;padding:var(--spacing-xs) 0}.pagination-btn{font-size:.75rem;font-size:var(--font-size-xs);min-width:32px}}.edit-input,.form-input,.form-textarea{background:#fff;background:var(--background-primary);border:2px solid #e5e7eb;border:2px solid var(--border-color);border-radius:6px;border-radius:var(--radius-md);box-shadow:0 1px 3px 0 #0000001a,0 1px 2px 0 #0000000f;box-shadow:var(--shadow-sm);color:#1f2937;color:var(--text-primary);font-family:var(--font-family);font-size:.875rem;font-size:var(--font-size-sm);line-height:1.5;line-height:var(--line-height-normal);min-height:36px;outline:none;padding:.5rem 1rem;padding:var(--spacing-sm) var(--spacing-md);transition:all .2s ease;transition:var(--transition-normal);width:100%}.edit-input:focus,.form-input:focus,.form-textarea:focus{background:#f9fafb;background:var(--background-secondary);border-color:#2563eb;border-color:var(--primary-color);box-shadow:0 0 0 3px #2563eb1a,0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;box-shadow:0 0 0 3px var(--primary-100),var(--shadow-md);transform:translateY(-1px)}.edit-input:hover,.form-input:hover,.form-textarea:hover{border-color:#3b82f6;border-color:var(--primary-light);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;box-shadow:var(--shadow-md)}.edit-input:disabled,.form-input:disabled,.form-textarea:disabled{background:var(--background-disabled);border-color:#f3f4f6;border-color:var(--border-light);color:var(--text-disabled);cursor:not-allowed;opacity:.6}.edit-input.error,.form-input.error,.form-textarea.error{border-color:#dc2626;border-color:var(--danger-color);box-shadow:0 0 0 3px #dc26261a;box-shadow:0 0 0 3px var(--danger-100)}.edit-input.success,.form-input.success,.form-textarea.success{border-color:#059669;border-color:var(--success-color);box-shadow:0 0 0 3px #0596691a;box-shadow:0 0 0 3px var(--success-100)}.form-textarea{font-family:var(--font-family);line-height:1.75;line-height:var(--line-height-relaxed);min-height:80px;resize:vertical}.form-input[type=select],select.edit-input,select.form-input{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url('data:image/svg+xml;charset=US-ASCII,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 4 5"><path fill="%23666" d="M2 0L0 2h4zm0 5L0 3h4z"/></svg>');background-position:right 12px center;background-repeat:no-repeat;background-size:12px;cursor:pointer;padding-right:40px}select.edit-input option,select.form-input option{background:#fff;background:var(--background-primary);color:#1f2937;color:var(--text-primary);padding:.5rem;padding:var(--spacing-sm)}.edit-input[type=number],.form-input[type=number]{text-align:right}.edit-input[type=date],.edit-input[type=datetime-local],.edit-input[type=time],.form-input[type=date],.form-input[type=datetime-local],.form-input[type=time]{cursor:pointer}.edit-mode-container{display:inline-block;position:relative;width:100%}.edit-mode-indicator{animation:pulse 2s infinite;background:#2563eb;background:var(--primary-color);border-radius:50%;box-shadow:0 0 0 2px #fff;box-shadow:0 0 0 2px var(--background-primary);height:8px;position:absolute;right:-2px;top:-2px;width:8px}td .edit-input,td .form-input,td .form-textarea{margin:-4px;min-width:120px}.edit-input.sm,.form-input.sm{font-size:.75rem;font-size:var(--font-size-xs);min-height:28px;padding:.25rem .5rem;padding:var(--spacing-xs) var(--spacing-sm)}.edit-input.lg,.form-input.lg{font-size:var(--font-size-md);min-height:44px;padding:1rem 1.5rem;padding:var(--spacing-md) var(--spacing-lg)}@media (max-width:768px){.edit-input,.form-input,.form-textarea{font-size:.875rem;font-size:var(--font-size-sm);min-height:32px;padding:.25rem .5rem;padding:var(--spacing-xs) var(--spacing-sm)}td .edit-input,td .form-input{min-width:100px}.form-textarea{min-height:60px}}@media (max-width:480px){.edit-input,.form-input,.form-textarea{font-size:.75rem;font-size:var(--font-size-xs);min-height:28px;padding:.25rem;padding:var(--spacing-xs)}td .edit-input,td .form-input{min-width:80px}.form-textarea{min-height:50px}}.main-record{background-color:#fff;background-color:var(--background-primary);border-left:3px solid #2563eb;border-left:3px solid var(--primary-color)}.main-record:hover{background-color:#f8fafc;background-color:var(--background-hover)}.sub-record{background-color:#f9fafb;background-color:var(--gray-50);border-left:3px solid #d1d5db;border-left:3px solid var(--gray-300);font-size:.875rem}.sub-record:hover{background-color:#f3f4f6;background-color:var(--gray-100)}.expand-btn{color:#6b7280;color:var(--text-secondary);transition:all .15s ease;transition:var(--transition-fast)}.expand-btn:hover{color:#2563eb;color:var(--primary-color)}.table tbody tr.main-record td:first-child{border-left:3px solid #2563eb;border-left:3px solid var(--primary-color)}.table tbody tr.sub-record td:first-child{border-left:3px solid #d1d5db;border-left:3px solid var(--gray-300)}.status-badge{border-radius:var(--radius-sm);display:inline-block;font-weight:var(--font-weight-medium);padding:.25rem .5rem;text-align:center;transition:all .15s ease;transition:var(--transition-fast)}.loading-indicator{color:#6b7280;flex-direction:column;font-size:.9rem;min-height:120px;padding:2rem;position:relative;text-align:center}.loading-indicator:before{animation:spin .8s linear infinite;border:2px solid #e5e7eb;border-top-color:#2563eb;border:2px solid var(--border-color);height:1.25rem;margin-bottom:.75rem;width:1.25rem}.loading-indicator.simple{min-height:auto;padding:1rem}.loading-indicator.simple:before{display:none}@media (max-width:768px){.loading-indicator{font-size:.8rem;min-height:100px;padding:1.5rem}.loading-indicator:before{height:1rem;margin-bottom:.5rem;width:1rem}}.detail-card{background:#fff;background:var(--background-primary);border:1px solid #f3f4f6;border:1px solid var(--border-light);border-radius:8px;border-radius:var(--radius-lg);box-shadow:0 1px 3px 0 #0000001a,0 1px 2px 0 #0000000f;box-shadow:var(--shadow-sm);margin-bottom:1.5rem;margin-bottom:var(--spacing-lg);padding:1.5rem;padding:var(--spacing-lg);transition:all .2s ease;transition:var(--transition-normal)}.detail-card:hover{border-color:#e5e7eb;border-color:var(--border-color);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;box-shadow:var(--shadow-md)}.detail-card-title{align-items:center;border-bottom:1px solid #f3f4f6;border-bottom:1px solid var(--border-light);color:#1f2937;color:var(--text-primary);display:flex;font-size:1.125rem;font-size:var(--font-size-lg);font-weight:600;font-weight:var(--font-weight-semibold);gap:.5rem;gap:var(--spacing-sm);margin-bottom:1rem;margin-bottom:var(--spacing-md);padding-bottom:.5rem;padding-bottom:var(--spacing-sm)}.detail-card-title i{color:#2563eb;color:var(--primary-color);font-size:1.1em}.detail-item{align-items:flex-start;display:flex;gap:.5rem;gap:var(--spacing-sm);margin-bottom:1rem;margin-bottom:var(--spacing-md);padding:.5rem 0;padding:var(--spacing-sm) 0}.detail-item:last-child{margin-bottom:0}.detail-item i{font-size:.9em;margin-top:2px;min-width:16px}.detail-item i,.detail-item-label{color:#6b7280;color:var(--text-secondary)}.detail-item-label{flex-shrink:0;font-weight:500;font-weight:var(--font-weight-medium);min-width:80px}.detail-item-value{color:#1f2937;color:var(--text-primary);flex:1 1;word-break:break-word}.detail-item-value.room-badge{background:#2563eb1a;background:var(--primary-100);border-radius:4px;border-radius:var(--radius-sm);color:#2563eb;color:var(--primary-color);display:inline-block;font-size:.875rem;font-size:var(--font-size-sm);font-weight:500;font-weight:var(--font-weight-medium);padding:2px 8px}.detail-item-value.member-name{color:#1f2937;color:var(--text-primary);font-weight:600;font-weight:var(--font-weight-semibold)}.detail-item-value.empty-content{color:#9ca3af;color:var(--text-muted);display:flex;font-style:italic}.category-badge,.detail-item-value.empty-content{align-items:center;gap:.25rem;gap:var(--spacing-xs)}.category-badge{border-radius:9999px;border-radius:var(--radius-full);display:inline-flex;font-size:.875rem;font-size:var(--font-size-sm);font-weight:500;font-weight:var(--font-weight-medium);letter-spacing:.025em;padding:4px 10px;text-transform:uppercase}.category-badge.complaint{background:#dc26260d;background:var(--danger-50);border:1px solid #dc262633;border:1px solid var(--danger-200);color:#dc2626;color:var(--danger-color)}.category-badge.suggestion{background:#0ea5e90d;background:var(--info-50);border:1px solid #0ea5e933;border:1px solid var(--info-200);color:#0ea5e9;color:var(--info-color)}.category-badge.inquiry{background:#d977060d;background:var(--warning-50);border:1px solid #d9770633;border:1px solid var(--warning-200);color:#d97706;color:var(--warning-color)}.category-badge.praise{background:#0596690d;background:var(--success-50);border:1px solid #05966933;border:1px solid var(--success-200);color:#059669;color:var(--success-color)}.category-badge.other{background:#f3f4f6;background:var(--gray-100);border:1px solid #e5e7eb;border:1px solid var(--gray-200);color:#4b5563;color:var(--gray-600)}.detail-content{background:#f9fafb;background:var(--background-secondary);border:1px solid #f3f4f6;border:1px solid var(--border-light);border-radius:6px;border-radius:var(--radius-md);font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font-family:var(--font-family-mono);font-size:.875rem;font-size:var(--font-size-sm);line-height:1.6;max-height:200px;overflow-y:auto;padding:1rem;padding:var(--spacing-md);white-space:pre-wrap;word-break:break-word}@media (max-width:768px){.detail-card{margin-bottom:1rem;margin-bottom:var(--spacing-md);padding:1rem;padding:var(--spacing-md)}.detail-card-title{font-size:1rem;font-size:var(--font-size-base)}.detail-item{flex-direction:column;gap:.25rem;gap:var(--spacing-xs)}.detail-item-label{font-size:.875rem;font-size:var(--font-size-sm);min-width:auto}.detail-content{font-size:.75rem;font-size:var(--font-size-xs);max-height:150px}}.risk-category-badge{border-radius:4px;border-radius:var(--radius-sm);font-size:.75rem;font-size:var(--font-size-xs);font-weight:500;font-weight:var(--font-weight-medium);justify-content:center;min-width:40px;text-align:center}.risk-category-badge.risk-a{background:#0596690d;background:var(--success-50);border:1px solid #05966933;border:1px solid var(--success-200);color:#059669;color:var(--success-color)}.risk-category-badge.risk-b{background:#d977060d;background:var(--warning-50);border:1px solid #d9770633;border:1px solid var(--warning-200);color:#d97706;color:var(--warning-color)}.risk-category-badge.risk-c{background:#dc26260d;background:var(--danger-50);border:1px solid #dc262633;border:1px solid var(--danger-200);color:#dc2626;color:var(--danger-color)}.risk-category-badge.risk-d{background:#991b1b0d;background:var(--error-50);border:1px solid #991b1b33;border:1px solid var(--error-200);color:#991b1b;color:var(--error-color)}.risk-assessment-badge{background:#f3f4f6;background:var(--gray-100);border:1px solid #e5e7eb;border:1px solid var(--gray-200);border-radius:4px;border-radius:var(--radius-sm);color:#374151;color:var(--gray-700);font-size:.75rem;font-size:var(--font-size-xs);font-weight:500;font-weight:var(--font-weight-medium);text-align:center}.inspection-status-badge,.risk-assessment-badge{align-items:center;display:inline-flex;padding:4px 8px}.inspection-status-badge{border-radius:12px;font-size:12px;font-weight:500;gap:4px;transition:all .2s ease;white-space:nowrap}.inspection-status-badge.status-completed{background-color:#0596691a;background-color:var(--success-100);border:1px solid #05966933;border:1px solid var(--success-200);color:#047857;color:var(--success-dark)}.inspection-status-badge.status-pending{background-color:#d977061a;background-color:var(--warning-100);border:1px solid #d9770633;border:1px solid var(--warning-200);color:#b45309;color:var(--warning-dark)}.inspection-status-badge.status-unknown{background-color:#f3f4f6;background-color:var(--gray-100);border:1px solid #e5e7eb;border:1px solid var(--gray-200);color:#4b5563;color:var(--gray-600)}.inspection-status-badge:hover{box-shadow:0 2px 4px #0000001a;transform:translateY(-1px)}.transfer-modal-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1050}.transfer-modal-content{background:#fff;border-radius:8px;box-shadow:0 4px 20px #00000026;display:flex;flex-direction:column;max-height:90vh;max-width:800px;overflow:hidden;width:100%}.transfer-modal-header{align-items:center;background-color:#f8f9fa;border-bottom:1px solid #e9ecef;display:flex;justify-content:space-between;padding:20px 24px}.transfer-modal-header h2{color:#333;font-size:18px;font-weight:600;margin:0}.transfer-modal-close{align-items:center;background:none;border:none;border-radius:4px;color:#6c757d;cursor:pointer;display:flex;font-size:24px;height:30px;justify-content:center;padding:0;transition:all .2s ease;width:30px}.transfer-modal-close:hover{background-color:#e9ecef;color:#495057}.transfer-modal-body{display:flex;flex:1 1;flex-direction:column;gap:24px;overflow-y:auto;padding:24px}.target-customer-info h3{color:#333;font-size:16px;font-weight:600;margin:0 0 12px}.target-customer-card{background-color:#f8f9fa;border:1px solid #e9ecef;border-radius:6px;display:flex;flex-wrap:wrap;gap:24px;padding:16px}.customer-field{align-items:center;display:flex;gap:8px}.customer-field .label{color:#6c757d;font-weight:500;min-width:60px}.customer-field .value{color:#333;font-weight:500}.search-section h3{color:#333;font-size:16px;font-weight:600;margin:0 0 12px}.search-input-container{display:flex;flex-direction:column;gap:8px}.search-input{border:1px solid #ced4da;border-radius:6px;font-size:14px;padding:12px 16px;transition:border-color .2s ease;width:100%}.search-input:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40;outline:none}.search-hint{color:#6c757d;font-size:12px;margin-left:4px}.error-message{background-color:#f8d7da;border:1px solid #f5c6cb;color:#721c24;font-size:14px;padding:12px 16px}.search-results-section{display:flex;flex:1 1;flex-direction:column;min-height:200px}.results-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.results-header h3{color:#333;font-size:16px;font-weight:600;margin:0}.customer-list{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.customer-item{align-items:center;cursor:pointer;justify-content:space-between;padding:16px}.customer-item:hover{border-color:#007bff;box-shadow:0 2px 8px #007bff26}.customer-item.selected{background-color:#f0f8ff;border-color:#007bff}.customer-info{gap:8px}.customer-main-info{align-items:center;display:flex;gap:16px}.customer-name,.customer-phone{font-size:14px}.customer-meta-info{color:#6c757d;display:flex;font-size:12px;gap:16px}.selection-indicator{align-items:center;display:flex;height:24px;justify-content:center;width:24px}.checkmark{color:#007bff;font-size:16px;font-weight:700}.pagination{gap:16px;padding:16px 0}.pagination-btn{background-color:#fff;border:1px solid #ced4da;color:#333;font-size:14px;padding:8px 16px;transition:all .2s ease}.pagination-btn:hover:not(:disabled){background-color:#007bff;border-color:#007bff;color:#fff}.pagination-btn:disabled{background-color:#f8f9fa;color:#6c757d}.pagination-info{color:#6c757d;font-size:14px}.no-results,.search-placeholder{align-items:center;color:#6c757d;display:flex;flex-direction:column;justify-content:center;padding:40px;text-align:center}.no-results p,.search-placeholder p{font-size:16px;margin:0 0 8px}.no-results small,.search-placeholder small{color:#adb5bd;font-size:14px}.selected-summary{border-top:1px solid #e9ecef;padding-top:20px}.selected-summary h3{color:#333;font-size:16px;font-weight:600;margin:0 0 12px}.selected-list{display:flex;flex-wrap:wrap;gap:8px}.selected-item{background-color:#e3f2fd;border:1px solid #bbdefb;border-radius:20px;font-size:12px;gap:8px;padding:6px 12px}.remove-btn,.selected-item{align-items:center;color:#1976d2;display:flex}.remove-btn{background:none;border:none;border-radius:50%;cursor:pointer;font-size:14px;font-weight:700;height:16px;justify-content:center;padding:0;transition:all .2s ease;width:16px}.remove-btn:hover{background-color:#1976d2;color:#fff}.transfer-modal-footer{background-color:#f8f9fa;border-top:1px solid #e9ecef;display:flex;gap:12px;justify-content:flex-end;padding:20px 24px}@media (max-width:768px){.transfer-modal-overlay{padding:10px}.transfer-modal-content{max-height:95vh}.transfer-modal-body,.transfer-modal-footer,.transfer-modal-header{padding:16px}.target-customer-card{flex-direction:column;gap:12px}.customer-main-info{align-items:flex-start}.customer-main-info,.customer-meta-info{flex-direction:column;gap:4px}.results-header{align-items:flex-start;gap:12px}.results-header,.transfer-modal-footer{flex-direction:column}.btn{width:100%}}@media (max-width:480px){.transfer-modal-header h2{font-size:16px}.customer-item{padding:12px}.selected-list{flex-direction:column}.selected-item{justify-content:space-between}}.transfer-modal .selected-target-summary{background-color:#e8f5e8;border:1px solid #c3e6c3;border-radius:8px;margin-top:20px;padding:15px}.transfer-modal .selected-target-card{align-items:center;background-color:#fff;border:1px solid #28a745;border-radius:6px;display:flex;justify-content:space-between;margin-top:10px;padding:12px}.transfer-modal .target-info{display:flex;flex-direction:column;gap:4px}.transfer-modal .target-name{color:#28a745;font-weight:700}.transfer-modal .target-phone{color:#666;font-size:14px}.transfer-modal .target-project{color:#888;font-size:12px}.transfer-modal .selected-customers-summary{background-color:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;margin-top:20px;padding:15px}.transfer-modal .selected-customers-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.transfer-modal .selected-customer-item{align-items:center;background-color:#007bff;border-radius:20px;color:#fff;display:flex;font-size:14px;gap:8px;padding:6px 12px}.transfer-modal .remove-btn{align-items:center;background:none;border:none;border-radius:50%;color:inherit;cursor:pointer;display:flex;font-size:16px;height:20px;justify-content:center;padding:0;width:20px}.transfer-modal .remove-btn:hover{background-color:#fff3}.customer-detail-modal-content{position:relative}.customer-detail-modal-header{background-color:#f9fafb;border-bottom:1px solid #e5e7eb;padding:20px 24px}.customer-detail-modal-header h2{color:#1f2937;font-size:1.5rem;font-weight:600}.customer-detail-close-button{border-radius:4px;color:#6b7280;height:32px;transition:all .2s;width:32px}.customer-detail-close-button:hover{background-color:#f3f4f6;color:#374151}.customer-detail-modal-body{padding:24px}.customer-detail-section{margin-bottom:32px}.customer-detail-section-title{border-bottom:2px solid #e5e7eb;color:#1f2937;font-size:1.25rem;margin:0 0 16px}.customer-detail-grid{grid-gap:16px;gap:16px}.care-service-assessment{display:flex;flex-direction:column;gap:16px;margin-top:16px}.care-service-row{background-color:#fafafa;border:1px solid #e0e0e0;border-radius:8px;display:flex;flex-direction:column;gap:12px;padding:16px}.care-service-item{display:flex;flex-direction:column;gap:8px;margin-bottom:0}.care-service-item label{color:#333;font-weight:600;margin-bottom:8px}.care-service-item .radio-group{display:flex;flex-direction:row;flex-wrap:nowrap;gap:16px;justify-content:flex-start}.care-service-item .radio-option{align-items:center;display:inline-flex;margin-right:0;white-space:nowrap}.care-service-item .radio-option:not(:last-child){margin-right:16px}.care-service-item .radio-option input[type=radio]{margin-right:6px}.care-service-item .edit-input,.care-service-item .edit-select,.care-service-item .edit-textarea{margin-top:4px}@media (max-width:768px){.care-service-row{padding:12px}.care-service-item .radio-group{flex-wrap:wrap;gap:12px}}.health-status-assessment{display:flex;flex-direction:column;gap:16px}.health-status-row{background-color:#fafafa;border:1px solid #e0e0e0;border-radius:8px;display:flex;flex-direction:column;gap:12px;padding:16px}.health-status-item{display:flex;flex-direction:column;gap:8px;margin-bottom:0}.health-status-item label{color:#333;font-weight:500;margin-bottom:4px}.health-status-item .radio-group{align-items:center;display:flex;flex-direction:row;flex-wrap:nowrap;gap:16px}.health-status-item .radio-option{align-items:center;display:flex;gap:4px;white-space:nowrap}.health-status-item .radio-option input[type=radio]{margin:0}.health-status-item .radio-option label{cursor:pointer;font-weight:400;margin:0}@media (max-width:768px){.health-status-row{gap:8px;padding:12px}.health-status-item .radio-group{align-items:flex-start;flex-direction:column;gap:8px}}.customer-detail-item{gap:4px}.customer-detail-item.customer-detail-full-width{grid-column:1/-1}.customer-detail-item label{color:#374151;font-size:.875rem;font-weight:600}.customer-detail-item span{word-wrap:break-word;background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:4px;color:#1f2937;font-size:.875rem;min-height:20px;padding:8px 12px}.customer-detail-modal-footer{background-color:#f9fafb;border-top:1px solid #e5e7eb;padding:16px 24px}.customer-detail-btn{font-size:.875rem;font-weight:500;transition:all .2s}.customer-detail-btn-secondary{background-color:#6b7280}.customer-detail-btn-secondary:hover{background-color:#4b5563}@media (max-width:768px){.customer-detail-modal-content{margin:20px;width:95%}.customer-detail-grid{grid-template-columns:1fr}.customer-detail-modal-header{padding:16px 20px}.customer-detail-modal-body{padding:20px}.customer-detail-modal-footer{padding:12px 20px}}.edit-input{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:8px 12px;transition:border-color .3s ease;width:100%}.edit-input:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40;outline:none}.edit-select{background-color:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:14px;padding:8px 12px;transition:border-color .3s ease;width:100%}.edit-select:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40;outline:none}.edit-textarea{border:1px solid #ddd;border-radius:4px;font-size:14px;min-height:80px;padding:8px 12px;resize:vertical;transition:border-color .3s ease;width:100%}.edit-textarea:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40;outline:none}.radio-option{display:inline-flex;gap:4px;margin:0;white-space:nowrap}.radio-option input[type=radio]{margin:0 4px 0 0}.radio-option span{cursor:pointer;font-size:14px}.care-service-item .radio-group .radio-option{margin-right:16px}.care-service-item .radio-group .radio-option:last-child{margin-right:0}.radio-option:hover{color:#007bff}.customer-detail-btn{border:none;border-radius:4px;cursor:pointer;font-size:14px;margin-left:8px;padding:8px 16px;transition:all .3s ease}.customer-detail-btn:first-child{margin-left:0}.customer-detail-btn-primary{background-color:#007bff;color:#fff}.customer-detail-btn-primary:hover:not(:disabled){background-color:#0056b3}.customer-detail-btn-secondary{background-color:#6c757d;color:#fff}.customer-detail-btn-secondary:hover:not(:disabled){background-color:#545b62}.customer-detail-btn:disabled{cursor:not-allowed;opacity:.6}.customer-detail-modal-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.customer-detail-modal-content{background:#fff;border-radius:8px;box-shadow:0 4px 20px #00000026;max-height:90vh;max-width:800px;overflow-y:auto;width:90%}.customer-detail-modal-header{align-items:center;background-color:#f8f9fa;border-bottom:1px solid #eee;border-radius:8px 8px 0 0;display:flex;justify-content:space-between;padding:20px}.customer-detail-modal-header h2{color:#333;font-size:20px;margin:0}.customer-detail-close-button{align-items:center;background:none;border:none;border-radius:50%;color:#666;cursor:pointer;display:flex;font-size:24px;height:30px;justify-content:center;padding:0;transition:all .3s ease;width:30px}.customer-detail-close-button:hover{background-color:#e9ecef;color:#333}.customer-detail-modal-body{padding:20px}.customer-detail-section{margin-bottom:30px}.customer-detail-section:last-child{margin-bottom:0}.customer-detail-section-title{border-bottom:2px solid #007bff;color:#333;font-size:18px;font-weight:600;margin-bottom:15px;padding-bottom:8px}.customer-detail-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.customer-detail-item{gap:5px}.customer-detail-item label{color:#555;font-size:14px;font-weight:500}.customer-detail-full-width{grid-column:1/-1}.customer-detail-modal-footer{background-color:#f8f9fa;border-radius:0 0 8px 8px;border-top:1px solid #eee;display:flex;justify-content:flex-end;padding:20px}.frequency-input-group{gap:8px}.frequency-input-group span{color:#6b7280;font-weight:500}@media (max-width:768px){.frequency-input-group{align-items:flex-start;flex-direction:column;gap:4px}.frequency-number,.frequency-unit{width:100%!important}.customer-detail-modal-content{margin:10px;width:95%}.customer-detail-grid{grid-template-columns:1fr}.radio-group{align-items:flex-start}.customer-detail-modal-footer,.radio-group{flex-direction:column;gap:10px}.customer-detail-btn{margin-left:0;width:100%}}.customer-details-modal{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.customer-info-card{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:1px solid #e2e8f0;border-radius:12px;margin-bottom:24px;padding:24px}.customer-info-card:before{background:linear-gradient(90deg,#3b82f6,#8b5cf6,#06b6d4)}.customer-info-card h3{align-items:center;color:#1e293b;display:flex;font-size:1.25rem;font-weight:600;gap:8px;margin:0 0 20px}.customer-info-card h3:before{content:"👤";font-size:1.1em}.customer-info-list{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));list-style:none;margin:0;padding:0}.customer-info-item{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:16px;position:relative;transition:all .2s ease}.customer-info-item:hover{border-color:#3b82f6;box-shadow:0 4px 12px #3b82f61a;transform:translateY(-1px)}.customer-info-label{color:#475569;display:block;font-size:.875rem;font-weight:600;margin-bottom:4px}.customer-info-value{color:#1e293b;font-size:.95rem;line-height:1.4;word-break:break-word}.edit-mode .customer-info-item{background:#fefefe;border-color:#d1d5db}.edit-mode .customer-info-value input,.edit-mode .customer-info-value select,.edit-mode .customer-info-value textarea{background:#fff;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;padding:8px 12px;transition:border-color .2s ease;width:100%}.edit-mode .customer-info-value input:focus,.edit-mode .customer-info-value select:focus,.edit-mode .customer-info-value textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.related-customers-section{margin-top:32px}.related-customers-section h3{align-items:center;color:#1e293b;display:flex;font-size:1.125rem;font-weight:600;gap:8px;margin:0 0 16px}.related-customers-section h3:before{content:"👥";font-size:1em}.related-customer-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:12px;padding:16px;transition:all .2s ease}.related-customer-card:hover{border-color:#8b5cf6;box-shadow:0 2px 8px #8b5cf61a}.related-customer-info{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.related-customer-field{display:flex;flex-direction:column;gap:4px}.related-customer-field .label{color:#64748b;font-size:.75rem;font-weight:500;letter-spacing:.025em;text-transform:uppercase}.related-customer-field .value{color:#1e293b;font-size:.875rem;font-weight:500}.related-customer-info.edit-mode{background:#f8fafc;border:1px solid #3b82f6;border-radius:8px;padding:16px}.related-customer-info.edit-mode .related-customer-field{margin-bottom:12px}.related-customer-info.edit-mode .related-customer-field input{background:#fff;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;margin-top:4px;padding:8px 12px;transition:border-color .2s ease;width:100%}.related-customer-info.edit-mode .related-customer-field input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.related-customer-info.edit-mode .related-customer-field .label{color:#374151;font-weight:600}.loading-state{color:#64748b;font-size:.875rem;padding:40px}.loading-state:before{animation:spin 1s linear infinite;border:2px solid #e2e8f0;border-top-color:#3b82f6;height:20px;margin-right:8px;width:20px}@media (max-width:768px){.customer-info-list,.related-customer-info{grid-template-columns:1fr}.customer-info-card{padding:16px}.modal-actions{flex-direction:column}.modal-actions .btn{width:100%}}.referenced-lead-section{background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border:1px solid #bae6fd;border-radius:12px;margin-bottom:20px;padding:20px}.referenced-lead-section h3{color:#0369a1;margin-bottom:16px}.referenced-lead-section h3:before{content:"🔗"}.customer-info-item,.related-customer-card{animation:fadeInUp .3s ease-out}.pagination-container{background:#f8f9fa;border-radius:8px;flex-direction:column;margin:1rem 0;padding:1rem 0}.pagination-container,.pagination-info{align-items:center;display:flex;gap:1rem;justify-content:center}.pagination-info{flex-wrap:wrap;width:100%}.pagination-text{color:#6c757d;font-size:.9rem;margin:0}.page-jump{align-items:center;display:flex;gap:.5rem}.page-jump span{color:#6c757d;font-size:.9rem}.page-input{border:1px solid #dee2e6;border-radius:4px;font-size:.9rem;padding:.4rem .6rem;text-align:center;width:60px}.page-input:focus{border-color:#007bff;box-shadow:0 0 0 .2rem #007bff40;outline:none}.jump-btn{background:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.9rem;padding:.4rem .8rem;transition:background-color .15s ease-in-out}.jump-btn:hover{background:#0056b3}.pagination{align-items:center;display:flex;gap:.5rem;justify-content:center}.pagination-btn{background:#fff;border:1px solid #dee2e6;border-radius:4px;color:#495057;cursor:pointer;font-size:.9rem;min-width:40px;padding:.5rem .75rem;transition:all .15s ease-in-out}.pagination-btn:hover:not(:disabled){background:#e9ecef;border-color:#adb5bd}.pagination-btn:disabled{background:#f8f9fa;cursor:not-allowed;opacity:.6}.pagination-btn.active{background:#007bff;border-color:#007bff;color:#fff;font-weight:500}.pagination-numbers{align-items:center;display:flex;gap:.25rem}@media (max-width:768px){.pagination-container{gap:.8rem;padding:.8rem}.pagination-info{flex-direction:column;gap:.5rem}.pagination{flex-wrap:wrap;gap:.3rem}.pagination-btn{font-size:.85rem;min-width:36px;padding:.4rem .6rem}.page-input{width:50px}.pagination-text{font-size:.85rem;text-align:center}}:root{--filter-primary:#2c83f6;--filter-primary-light:#e3f2fd;--filter-success:#4caf50;--filter-warning:#ff9800;--filter-danger:#f44336;--filter-info:#17a2b8;--filter-text-primary:#2d3748;--filter-text-secondary:#718096;--filter-text-muted:#a0aec0;--filter-placeholder:#9ca3af;--filter-border:#e2e8f0;--filter-border-focus:#2c83f6;--filter-bg:#fff;--filter-bg-hover:#f8fafc;--filter-bg-focus:#fff;--filter-bg-disabled:#f1f5f9;--filter-shadow-sm:0 1px 2px 0 #0000000d;--filter-shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;--filter-shadow-focus:0 0 0 3px #2c83f61a;--filter-radius:8px;--filter-radius-sm:6px;--filter-radius-lg:12px;--filter-transition:all 0.2s cubic-bezier(0.4,0,0.2,1);--filter-transition-fast:all 0.15s ease}.filter-container{background:#fff;background:var(--filter-bg);border:1px solid #e2e8f0;border:1px solid var(--filter-border);border-radius:12px;border-radius:var(--filter-radius-lg);box-shadow:0 1px 2px 0 #0000000d;box-shadow:var(--filter-shadow-sm);margin-bottom:1.5rem;padding:1.5rem;transition:all .2s cubic-bezier(.4,0,.2,1);transition:var(--filter-transition)}.filter-container:hover{box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;box-shadow:var(--filter-shadow-md)}.filter-header{border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--filter-border);justify-content:space-between;margin-bottom:1rem;padding-bottom:.75rem}.filter-header,.filter-title{align-items:center;display:flex}.filter-title{color:#2d3748;color:var(--filter-text-primary);font-size:1.125rem;font-weight:600;gap:.5rem;margin:0}.filter-title:before{content:"🔍";font-size:1rem}.filter-actions{gap:.5rem}.filter-reset-btn{background:#0000;border:1px solid #e2e8f0;border:1px solid var(--filter-border);border-radius:6px;border-radius:var(--filter-radius-sm);color:#718096;color:var(--filter-text-secondary);cursor:pointer;font-size:.875rem;padding:.5rem 1rem;transition:all .2s cubic-bezier(.4,0,.2,1);transition:var(--filter-transition)}.filter-reset-btn:hover{background:#f8fafc;background:var(--filter-bg-hover);border-color:#2c83f6;border-color:var(--filter-primary);color:#2c83f6;color:var(--filter-primary)}.filter-controls{grid-gap:1rem;align-items:end;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.filter-controls.compact{gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.filter-controls.inline{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem}.filter-container.rows-layout .filter-controls{align-items:center;display:flex;flex-direction:column;gap:1rem}.filter-row{gap:1rem;justify-content:center}.filter-row .filter-field{flex:0 0 auto;min-width:200px}.filter-field{display:flex;flex-direction:column;gap:.375rem}.filter-label{font-weight:500;margin:0}.filter-input,.filter-label,.filter-select,.filter-textarea{color:#2d3748;color:var(--filter-text-primary);font-size:.875rem}.filter-input,.filter-select,.filter-textarea{background:#fff;background:var(--filter-bg);border:1px solid #e2e8f0;border:1px solid var(--filter-border);border-radius:8px;border-radius:var(--filter-radius);box-sizing:border-box;outline:none;padding:.75rem 1rem;transition:all .2s cubic-bezier(.4,0,.2,1);transition:var(--filter-transition);width:100%}.filter-input::placeholder,.filter-select option:first-child{color:#9ca3af;color:var(--filter-placeholder)}.filter-input:focus,.filter-select:focus,.filter-textarea:focus{background:#fff;background:var(--filter-bg-focus);border-color:#2c83f6;border-color:var(--filter-border-focus);box-shadow:0 0 0 3px #2c83f61a;box-shadow:var(--filter-shadow-focus)}.filter-input:hover,.filter-select:hover,.filter-textarea:hover{border-color:#2c83f6;border-color:var(--filter-primary)}.filter-input:disabled,.filter-select:disabled,.filter-textarea:disabled{background:#f1f5f9;background:var(--filter-bg-disabled);color:#a0aec0;color:var(--filter-text-muted);cursor:not-allowed}.filter-search{position:relative}.filter-search .filter-input{padding-left:2.5rem}.filter-search:before{color:#a0aec0;color:var(--filter-text-muted);content:"🔍";font-size:.875rem;left:.875rem;position:absolute;top:50%;transform:translateY(-50%);z-index:1}.filter-date-range{grid-gap:.5rem;align-items:center;display:grid;gap:.5rem;grid-template-columns:1fr auto 1fr}.filter-date-range .date-separator{color:#a0aec0;color:var(--filter-text-muted);font-size:.875rem;text-align:center}.filter-multiselect{position:relative}.filter-multiselect-trigger{align-items:center;background:#fff;background:var(--filter-bg);border:1px solid #e2e8f0;border:1px solid var(--filter-border);border-radius:8px;border-radius:var(--filter-radius);box-sizing:border-box;cursor:pointer;display:flex;justify-content:space-between;min-height:2.75rem;padding:.75rem 1rem;transition:all .2s cubic-bezier(.4,0,.2,1);transition:var(--filter-transition)}.filter-multiselect-trigger:hover{border-color:#2c83f6;border-color:var(--filter-primary)}.filter-multiselect-trigger.active{border-color:#2c83f6;border-color:var(--filter-border-focus);box-shadow:0 0 0 3px #2c83f61a;box-shadow:var(--filter-shadow-focus)}.filter-multiselect-text{color:#2d3748;color:var(--filter-text-primary);flex:1 1;font-size:.875rem;text-align:left}.filter-multiselect-text.placeholder{color:#9ca3af;color:var(--filter-placeholder)}.filter-multiselect-arrow{color:#a0aec0;color:var(--filter-text-muted);font-size:.75rem;transition:all .15s ease;transition:var(--filter-transition-fast)}.filter-multiselect-arrow.open{transform:rotate(180deg)}.filter-multiselect-dropdown{background:#fff;background:var(--filter-bg);border:1px solid #e2e8f0;border:1px solid var(--filter-border);border-radius:8px;border-radius:var(--filter-radius);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;box-shadow:var(--filter-shadow-md);left:0;margin-top:.25rem;max-height:200px;overflow-y:auto;position:absolute;right:0;top:100%;z-index:1000}.filter-multiselect-option{align-items:center;border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--filter-border);cursor:pointer;display:flex;gap:.5rem;padding:.75rem 1rem;transition:all .15s ease;transition:var(--filter-transition-fast)}.filter-multiselect-option:last-child{border-bottom:none}.filter-multiselect-option:hover{background:#f8fafc;background:var(--filter-bg-hover)}.filter-multiselect-option input[type=checkbox]{margin:0}.filter-multiselect-option label{color:#2d3748;color:var(--filter-text-primary);cursor:pointer;flex:1 1;font-size:.875rem;margin:0}.filter-tags{border-top:1px solid #e2e8f0;border-top:1px solid var(--filter-border);display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem;padding-top:1rem}.filter-tag{align-items:center;background:#e3f2fd;background:var(--filter-primary-light);border:1px solid #0000;border-radius:6px;border-radius:var(--filter-radius-sm);color:#2c83f6;color:var(--filter-primary);display:inline-flex;font-size:.75rem;font-weight:500;gap:.375rem;padding:.375rem .75rem;transition:all .15s ease;transition:var(--filter-transition-fast)}.filter-tag:hover{background:#2c83f6;background:var(--filter-primary);color:#fff}.filter-tag-remove{background:none;border:none;color:inherit;cursor:pointer;font-size:.875rem;line-height:1;padding:0;transition:all .15s ease;transition:var(--filter-transition-fast)}.filter-tag-remove:hover{transform:scale(1.2)}@media (max-width:768px){.filter-container{margin-bottom:1rem;padding:1rem}.filter-controls{gap:.75rem;grid-template-columns:1fr}.filter-controls.inline,.filter-header{align-items:stretch;flex-direction:column}.filter-header{gap:.75rem}.filter-actions{justify-content:flex-end}.filter-date-range{gap:.5rem;grid-template-columns:1fr}.filter-date-range .date-separator{display:none}}@media (max-width:480px){.filter-container{border-radius:8px;border-radius:var(--filter-radius);padding:.75rem}.filter-input,.filter-select,.filter-textarea{padding:.625rem .875rem}.filter-title{font-size:1rem}}@media (prefers-color-scheme:dark){:root{--filter-text-primary:#f7fafc;--filter-text-secondary:#e2e8f0;--filter-text-muted:#a0aec0;--filter-placeholder:#718096;--filter-border:#4a5568;--filter-bg:#2d3748;--filter-bg-hover:#4a5568;--filter-bg-focus:#2d3748;--filter-bg-disabled:#1a202c}}@keyframes filterSlideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes filterFadeIn{0%{opacity:0}to{opacity:1}}.filter-container{animation:filterSlideIn .3s ease-out}.filter-multiselect-dropdown,.filter-tag{animation:filterFadeIn .2s ease-out}.filter-full-width{grid-column:1/-1}.filter-half-width{grid-column:span 2}.filter-compact{font-size:.8125rem;padding:.5rem .75rem}.filter-large{font-size:1rem;padding:1rem 1.25rem}.filter-no-label .filter-label{display:none}.filter-inline-label{align-items:center;flex-direction:row;gap:.75rem}.filter-inline-label .filter-label{margin-bottom:0;min-width:100px}.lead-distribution-form-container{background:var(--background-primary);border:1px solid var(--border-light);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);margin:0 auto;max-width:1000px;overflow:hidden;padding:var(--spacing-xl);position:relative}.lead-distribution-form-container:before{background:var(--gradient-primary);content:"";height:4px;left:0;position:absolute;right:0;top:0}.lead-distribution-form-title{color:var(--text-primary);font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-lg);position:relative;text-align:center}.lead-distribution-form-title:after{background:var(--gradient-primary);border-radius:var(--radius-full);bottom:0;content:"";height:3px;left:50%;position:absolute;transform:translateX(-50%);width:120px}.lead-distribution-form{display:flex;flex-direction:column;gap:var(--spacing-lg)}.lead-selection-area{align-items:center;background:var(--background-primary);border:2px dashed var(--border-color);border-radius:var(--radius-lg);display:flex;flex-direction:column;justify-content:center;min-height:200px;padding:var(--spacing-xl);position:relative;text-align:center;transition:var(--transition-normal)}.lead-selection-area.has-leads{background:var(--color-success-light);border-color:var(--color-success);border-style:solid}.lead-selection-area.dragover{background:var(--color-primary-light);border-color:var(--color-primary);transform:scale(1.02)}.lead-selection-icon{color:var(--text-secondary);height:64px;margin-bottom:var(--spacing-md);width:64px}.lead-selection-text{color:var(--text-primary);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);margin-bottom:var(--spacing-sm)}.lead-selection-hint{color:var(--text-secondary);font-size:var(--font-size-sm);margin-bottom:var(--spacing-lg)}.select-leads-button{align-items:center;background:var(--gradient-primary);border:none;border-radius:var(--radius-md);box-shadow:var(--shadow-xs);color:var(--text-inverse);cursor:pointer;display:flex;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);gap:var(--spacing-xs);padding:1rem 2rem;transition:var(--transition-normal)}.select-leads-button:hover{box-shadow:var(--shadow-md),var(--shadow-glow);transform:translateY(-2px)}.selected-leads-list{grid-gap:var(--spacing-md);display:grid;gap:var(--spacing-md);grid-template-columns:repeat(auto-fill,minmax(300px,1fr));margin-top:var(--spacing-lg)}.selected-lead-item{background:var(--background-primary);border:1px solid var(--border-light);border-radius:var(--radius-md);box-shadow:var(--shadow-xs);padding:var(--spacing-md);position:relative;transition:var(--transition-normal)}.selected-lead-item:hover{box-shadow:var(--shadow-sm);transform:translateY(-1px)}.lead-item-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:var(--spacing-sm)}.lead-item-title{color:var(--text-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.lead-item-remove{align-items:center;background:var(--color-danger);border:none;border-radius:var(--radius-sm);color:var(--text-inverse);cursor:pointer;display:flex;height:24px;justify-content:center;padding:var(--spacing-xs);transition:var(--transition-normal);width:24px}.lead-item-remove:hover{background:var(--color-danger-dark);transform:scale(1.1)}.lead-item-details{display:flex;flex-direction:column;gap:var(--spacing-xs)}.lead-item-detail{color:var(--text-secondary);display:flex;font-size:var(--font-size-xs);justify-content:space-between}.lead-item-detail-label{font-weight:var(--font-weight-medium)}.lead-item-detail-value{color:var(--text-primary)}.salesperson-selection{grid-gap:var(--spacing-lg);display:grid;gap:var(--spacing-lg);grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.salesperson-card{background:var(--background-primary);border:2px solid var(--border-light);border-radius:var(--radius-lg);cursor:pointer;overflow:hidden;padding:var(--spacing-lg);position:relative;transition:var(--transition-normal)}.salesperson-card:hover{border-color:var(--border-focus);box-shadow:var(--shadow-md);transform:translateY(-2px)}.salesperson-card.selected{background:var(--color-primary-light);border-color:var(--color-primary);box-shadow:var(--shadow-md),var(--shadow-glow)}.salesperson-card.selected:before{background:var(--gradient-primary);content:"";height:4px;left:0;position:absolute;right:0;top:0}.salesperson-header{align-items:center;display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.salesperson-avatar{align-items:center;background:var(--gradient-primary);border-radius:50%;color:var(--text-inverse);display:flex;font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);height:48px;justify-content:center;width:48px}.salesperson-info{flex:1 1}.salesperson-name{color:var(--text-primary);font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);margin-bottom:var(--spacing-xs)}.salesperson-department{color:var(--text-secondary);font-size:var(--font-size-sm)}.salesperson-stats{grid-gap:var(--spacing-sm);display:grid;gap:var(--spacing-sm);grid-template-columns:repeat(2,1fr);margin-top:var(--spacing-md)}.salesperson-stat{background:var(--background-secondary);border-radius:var(--radius-sm);padding:var(--spacing-sm);text-align:center}.salesperson-stat-number{color:var(--color-primary);font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);margin-bottom:var(--spacing-xs)}.salesperson-stat-label{color:var(--text-secondary);font-size:var(--font-size-xs)}.salesperson-workload{background:var(--background-secondary);border-radius:var(--radius-sm);margin-top:var(--spacing-md);padding:var(--spacing-sm)}.workload-label{color:var(--text-secondary);font-size:var(--font-size-xs);margin-bottom:var(--spacing-xs)}.workload-bar{background:var(--background-disabled);height:8px;overflow:hidden;width:100%}.workload-bar,.workload-fill{border-radius:var(--radius-full)}.workload-fill{height:100%;transition:var(--transition-normal)}.workload-fill.low{background:var(--gradient-success)}.workload-fill.medium{background:var(--gradient-warning)}.workload-fill.high{background:var(--gradient-danger)}.workload-percentage{color:var(--text-primary);font-size:var(--font-size-xs);margin-top:var(--spacing-xs);text-align:center}.distribution-rules{display:flex;flex-direction:column;gap:var(--spacing-md)}.rule-group{background:var(--background-primary);border:1px solid var(--border-light);border-radius:var(--radius-md);padding:var(--spacing-lg)}.rule-title{align-items:center;color:var(--text-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);margin-bottom:var(--spacing-md)}.rule-options,.rule-title{display:flex;gap:var(--spacing-sm)}.rule-options{flex-direction:column}.rule-option{align-items:center;border-radius:var(--radius-sm);cursor:pointer;display:flex;gap:var(--spacing-sm);padding:var(--spacing-sm);transition:var(--transition-normal)}.rule-option:hover{background:var(--background-hover)}.rule-option input[type=radio]{accent-color:var(--color-primary);cursor:pointer;height:16px;margin:0;width:16px}.rule-option label{cursor:pointer;flex:1 1;font-weight:var(--font-weight-normal);margin:0}.rule-description{color:var(--text-secondary);font-size:var(--font-size-xs);margin-top:var(--spacing-xs);padding-left:var(--spacing-lg)}.form-group textarea{min-height:100px}@media (max-width:768px){.lead-distribution-form-container{margin:var(--spacing-sm);padding:var(--spacing-lg)}.step-indicator{flex-direction:column;gap:var(--spacing-sm)}.step-separator{height:20px;width:2px}.form-row,.form-row.two-columns{grid-template-columns:1fr}.form-section{padding:var(--spacing-lg)}.salesperson-selection,.selected-leads-list{grid-template-columns:1fr}.form-actions{flex-direction:column;gap:var(--spacing-sm)}.form-actions-left,.form-actions-right{justify-content:center;width:100%}.form-button{min-width:auto;width:100%}}@media (max-width:480px){.lead-distribution-form-container{padding:var(--spacing-md)}.lead-distribution-form-title{font-size:var(--font-size-xl)}.salesperson-header{flex-direction:column;gap:var(--spacing-sm);text-align:center}.salesperson-stats{grid-template-columns:1fr}.lead-selection-area{min-height:150px;padding:var(--spacing-lg)}.lead-selection-icon{height:48px;width:48px}}.lead-distribution-form-container{animation:slideInUp .3s ease-out}.pending-lead-form-container{background:var(--background-primary);border:1px solid var(--border-light);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);margin:0 auto;max-width:1000px;overflow:hidden;padding:var(--spacing-xl);position:relative}.pending-lead-form-container:before{background:var(--gradient-primary);content:"";height:4px;left:0;position:absolute;right:0;top:0}.pending-lead-form-title{color:var(--text-primary);font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-lg);position:relative;text-align:center}.pending-lead-form-title:after{background:var(--gradient-primary);border-radius:var(--radius-full);bottom:0;content:"";height:3px;left:50%;position:absolute;transform:translateX(-50%);width:120px}.step-indicator{background:var(--background-secondary);border:1px solid var(--border-light);border-radius:var(--radius-lg);gap:var(--spacing-md);justify-content:center;margin-bottom:var(--spacing-xl);padding:var(--spacing-lg)}.step,.step-indicator{align-items:center;display:flex}.step{border-radius:var(--radius-md);gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);position:relative;transition:var(--transition-normal)}.step.active{background:var(--gradient-primary);box-shadow:var(--shadow-sm);color:var(--text-inverse)}.step.completed{background:var(--gradient-success);color:var(--text-inverse)}.step-number{align-items:center;background:var(--background-primary);border-radius:50%;color:var(--text-primary);display:flex;font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);height:28px;justify-content:center;width:28px}.step.active .step-number,.step.completed .step-number{background:#fff3;color:var(--text-inverse)}.step-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.step-separator{background:var(--border-color);border-radius:var(--radius-full);height:2px;width:50px}.step.completed+.step-separator{background:var(--color-success)}.pending-lead-form{display:flex;flex-direction:column;gap:var(--spacing-lg)}.form-section{padding:var(--spacing-xl);position:relative}.form-section-title{border-bottom:2px solid var(--border-light);margin-bottom:var(--spacing-lg)}.form-section-icon{color:var(--color-primary);height:20px;width:20px}.form-row{margin-bottom:var(--spacing-lg)}.form-row.two-columns{grid-template-columns:1fr 1fr}.customer-info-card{background:var(--background-primary);border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-xs);margin-bottom:var(--spacing-lg);overflow:hidden;padding:var(--spacing-xl);position:relative}.customer-info-card:before{background:var(--gradient-info);content:"";height:4px;left:0;position:absolute;right:0;top:0}.customer-info-header{align-items:center;display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.customer-avatar{align-items:center;background:var(--gradient-primary);border-radius:50%;color:var(--text-inverse);display:flex;font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);height:64px;justify-content:center;width:64px}.customer-basic-info{flex:1 1}.customer-name{color:var(--text-primary);font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);margin-bottom:var(--spacing-xs)}.customer-company{color:var(--text-secondary);font-size:var(--font-size-md);margin-bottom:var(--spacing-xs)}.customer-contact{align-items:center;color:var(--text-secondary);display:flex;font-size:var(--font-size-sm);gap:var(--spacing-sm)}.customer-details{grid-gap:var(--spacing-lg);display:grid;gap:var(--spacing-lg);grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.customer-detail-item{display:flex;flex-direction:column;gap:var(--spacing-xs)}.customer-detail-label{color:var(--text-secondary);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);letter-spacing:.5px;text-transform:uppercase}.customer-detail-value{color:var(--text-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.requirement-info{background:var(--background-primary);border:2px dashed var(--border-color);border-radius:var(--radius-lg);margin-bottom:var(--spacing-lg);padding:var(--spacing-xl);transition:var(--transition-normal)}.requirement-info.filled{background:var(--color-success-light);border-color:var(--color-success);border-style:solid}.requirement-title{align-items:center;color:var(--text-primary);display:flex;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);gap:var(--spacing-sm);margin-bottom:var(--spacing-lg)}.requirement-icon{color:var(--color-primary);height:24px;width:24px}.requirement-grid{grid-gap:var(--spacing-lg);display:grid;gap:var(--spacing-lg);grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.priority-selector{display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.priority-option{background:var(--background-primary);border:2px solid var(--border-light);border-radius:var(--radius-lg);cursor:pointer;flex:1 1;overflow:hidden;padding:var(--spacing-lg);position:relative;text-align:center;transition:var(--transition-normal)}.priority-option:hover{border-color:var(--border-focus);box-shadow:var(--shadow-md);transform:translateY(-2px)}.priority-option.selected{background:var(--color-primary-light);border-color:var(--color-primary);box-shadow:var(--shadow-md),var(--shadow-glow)}.priority-option.high.selected{background:var(--color-danger-light);border-color:var(--color-danger);box-shadow:var(--shadow-md),var(--shadow-glow-danger)}.priority-option.medium.selected{background:var(--color-warning-light);border-color:var(--color-warning);box-shadow:var(--shadow-md),var(--shadow-glow-warning)}.priority-option.low.selected{background:var(--color-success-light);border-color:var(--color-success);box-shadow:var(--shadow-md),var(--shadow-glow-success)}.priority-icon{align-items:center;border-radius:50%;display:flex;font-size:var(--font-size-lg);height:32px;justify-content:center;margin:0 auto var(--spacing-sm);width:32px}.priority-option.high .priority-icon{background:var(--color-danger-light);color:var(--color-danger)}.priority-option.medium .priority-icon{background:var(--color-warning-light);color:var(--color-warning)}.priority-option.low .priority-icon{background:var(--color-success-light);color:var(--color-success)}.priority-label{color:var(--text-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);margin-bottom:var(--spacing-xs)}.priority-description{color:var(--text-secondary);font-size:var(--font-size-xs);line-height:var(--line-height-relaxed)}.time-selector{grid-gap:var(--spacing-lg);display:grid;gap:var(--spacing-lg);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:var(--spacing-lg)}.time-option{background:var(--background-primary);border:2px solid var(--border-light);border-radius:var(--radius-lg);cursor:pointer;padding:var(--spacing-lg);position:relative;text-align:center;transition:var(--transition-normal)}.time-option:hover{border-color:var(--border-focus);box-shadow:var(--shadow-md);transform:translateY(-2px)}.time-option.selected{border-color:var(--color-primary);box-shadow:var(--shadow-md),var(--shadow-glow)}.time-icon,.time-option.selected{background:var(--color-primary-light)}.time-icon{align-items:center;border-radius:50%;color:var(--color-primary);display:flex;font-size:var(--font-size-lg);height:32px;justify-content:center;margin:0 auto var(--spacing-sm);width:32px}.time-label{color:var(--text-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);margin-bottom:var(--spacing-xs)}.time-description{color:var(--text-secondary);font-size:var(--font-size-xs)}.file-upload-area{align-items:center;background:var(--background-primary);border:2px dashed var(--border-color);border-radius:var(--radius-lg);display:flex;flex-direction:column;justify-content:center;min-height:150px;padding:var(--spacing-xl);position:relative;text-align:center;transition:var(--transition-normal)}.file-upload-area.dragover{background:var(--color-primary-light);border-color:var(--color-primary);transform:scale(1.02)}.file-upload-area.has-files{background:var(--color-success-light);border-color:var(--color-success);border-style:solid}.file-upload-icon{color:var(--text-secondary);height:48px;margin-bottom:var(--spacing-md);width:48px}.file-upload-text{color:var(--text-primary);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);margin-bottom:var(--spacing-sm)}.file-upload-hint{color:var(--text-secondary);font-size:var(--font-size-sm);margin-bottom:var(--spacing-lg)}.file-upload-button{align-items:center;background:var(--gradient-primary);border:none;border-radius:var(--radius-md);box-shadow:var(--shadow-xs);color:var(--text-inverse);cursor:pointer;display:flex;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);gap:var(--spacing-xs);padding:var(--spacing-md) var(--spacing-xl);transition:var(--transition-normal)}.file-upload-button:hover{box-shadow:var(--shadow-md),var(--shadow-glow);transform:translateY(-2px)}.uploaded-files-list{display:flex;flex-direction:column;gap:var(--spacing-sm);margin-top:var(--spacing-lg)}.uploaded-file-item{align-items:center;background:var(--background-secondary);border:1px solid var(--border-light);border-radius:var(--radius-md);display:flex;gap:var(--spacing-md);padding:var(--spacing-md);transition:var(--transition-normal)}.uploaded-file-item:hover{background:var(--background-hover);transform:translateX(4px)}.file-icon{color:var(--color-primary);height:32px;width:32px}.file-info{display:flex;flex:1 1;flex-direction:column;gap:var(--spacing-xs)}.file-name{color:var(--text-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.file-size{color:var(--text-secondary);font-size:var(--font-size-xs)}.file-remove{align-items:center;background:var(--color-danger);border:none;border-radius:var(--radius-sm);color:var(--text-inverse);cursor:pointer;display:flex;height:28px;justify-content:center;padding:var(--spacing-xs);transition:var(--transition-normal);width:28px}.file-remove:hover{background:var(--color-danger-dark);transform:scale(1.1)}.checkbox-group{flex-direction:column}.checkbox-group,.checkbox-item{display:flex;gap:var(--spacing-sm)}.checkbox-item{align-items:center;border-radius:var(--radius-sm);cursor:pointer;padding:var(--spacing-sm);transition:var(--transition-normal)}.checkbox-item:hover{background:var(--background-hover)}.checkbox-item input[type=checkbox]{accent-color:var(--color-primary);cursor:pointer;height:18px;margin:0;width:18px}.checkbox-item label{cursor:pointer;flex:1 1;font-weight:var(--font-weight-normal);margin:0}.radio-group{flex-direction:column;gap:var(--spacing-sm)}.radio-item{align-items:center;border-radius:var(--radius-sm);cursor:pointer;display:flex;gap:var(--spacing-sm);padding:var(--spacing-sm);transition:var(--transition-normal)}.radio-item:hover{background:var(--background-hover)}.radio-item input[type=radio]{accent-color:var(--color-primary);cursor:pointer;height:18px;margin:0;width:18px}.radio-item label{cursor:pointer;flex:1 1;font-weight:var(--font-weight-normal);margin:0}.form-group .help-text{align-items:center;display:flex;gap:var(--spacing-xs)}.form-actions{justify-content:space-between}.form-actions-left,.form-actions-right{display:flex;gap:var(--spacing-md)}.form-button.success{background:var(--gradient-success);color:var(--text-inverse)}.form-button.success:hover:not(:disabled){box-shadow:var(--shadow-md),var(--shadow-glow-success);transform:translateY(-2px)}.form-button.warning{background:var(--gradient-warning);color:var(--text-inverse)}.form-button.warning:hover:not(:disabled){box-shadow:var(--shadow-md),var(--shadow-glow-warning);transform:translateY(-2px)}.form-button.outline{background:#0000;border:1px solid var(--border-color);color:var(--text-primary)}.form-button.outline:hover:not(:disabled){background:var(--background-hover);border-color:var(--border-focus);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.form-progress{margin-bottom:var(--spacing-xl)}.progress-bar{background:var(--background-disabled);box-shadow:inset 0 1px 3px #0000001a;height:8px;overflow:hidden;width:100%}.progress-bar,.progress-fill{border-radius:var(--radius-full)}.progress-fill{background:var(--gradient-primary);height:100%;position:relative;transition:width .3s ease}.progress-fill:after{animation:shimmer 2s infinite;background:linear-gradient(90deg,#0000,#ffffff4d,#0000);bottom:0;content:"";left:0;position:absolute;right:0;top:0}.progress-text{color:var(--text-secondary);font-size:var(--font-size-sm);margin-top:var(--spacing-sm);text-align:center}@media (max-width:768px){.pending-lead-form-container{margin:var(--spacing-sm);padding:var(--spacing-lg)}.step-indicator{flex-direction:column;gap:var(--spacing-sm)}.step-separator{height:20px;width:2px}.form-row,.form-row.two-columns{grid-template-columns:1fr}.form-section{padding:var(--spacing-lg)}.customer-details{grid-template-columns:1fr}.priority-selector{flex-direction:column}.requirement-grid,.time-selector{grid-template-columns:1fr}.form-actions{flex-direction:column;gap:var(--spacing-sm)}.form-actions-left,.form-actions-right{justify-content:center;width:100%}.form-button{min-width:auto;width:100%}}@media (max-width:480px){.pending-lead-form-container{padding:var(--spacing-md)}.pending-lead-form-title{font-size:var(--font-size-xl)}.customer-info-header{flex-direction:column;gap:var(--spacing-sm);text-align:center}.customer-avatar{font-size:var(--font-size-lg);height:48px;width:48px}.file-upload-area{min-height:120px;padding:var(--spacing-lg)}.file-upload-icon{height:32px;width:32px}}.form-section,.pending-lead-form-container{animation:slideInUp .3s ease-out}.form-section{animation-delay:0s;animation-delay:calc(var(--index, 0)*.1s)}@media (prefers-color-scheme:dark){.customer-info-card:before{opacity:.8}.priority-option.selected,.time-option.selected{box-shadow:var(--shadow-md),0 0 20px rgba(var(--color-primary-rgb),.3)}}.customer-form-container{background:var(--background-primary);border:1px solid var(--border-light);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);margin:0 auto;max-width:800px;overflow:hidden;padding:var(--spacing-xl);position:relative}.customer-form-container:before{background:var(--gradient-primary);content:"";height:4px;left:0;position:absolute;right:0;top:0}.customer-form-title{color:var(--text-primary);font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-lg);position:relative;text-align:center}.customer-form-title:after{background:var(--gradient-primary);border-radius:var(--radius-full);bottom:0;content:"";height:3px;left:50%;position:absolute;transform:translateX(-50%);width:80px}.customer-form{display:flex;flex-direction:column;gap:var(--spacing-lg)}.form-row{grid-gap:var(--spacing-lg);gap:var(--spacing-lg);grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.form-row.single{grid-template-columns:1fr}.form-group{display:flex;flex-direction:column;gap:var(--spacing-sm);position:relative}.form-group.required label:after{color:var(--color-danger);content:" *";font-weight:var(--font-weight-bold)}.form-group label{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);gap:var(--spacing-xs);margin-bottom:var(--spacing-xs)}.form-group label,.radio-group{align-items:center;display:flex}.radio-group{flex-wrap:wrap;gap:var(--spacing-md);padding:var(--spacing-sm) 0}.radio-option{align-items:center;background:var(--background-secondary);border:1px solid #0000;border-radius:var(--radius-md);color:var(--text-primary);cursor:pointer;display:flex;font-size:var(--font-size-sm);gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);transition:var(--transition-normal)}.radio-option:hover{background:var(--background-hover);border-color:var(--border-color)}.radio-option input[type=radio]{accent-color:var(--color-primary);cursor:pointer;height:16px;margin:0;width:16px}.radio-option span{font-weight:var(--font-weight-medium);-webkit-user-select:none;user-select:none}.radio-option:has(input[type=radio]:checked){background:var(--primary-50);border-color:var(--primary-300);color:var(--primary-700)}.radio-option:has(input[type=radio]:checked) span{font-weight:var(--font-weight-semibold)}.form-group input,.form-group select,.form-group textarea{background:var(--background-primary);box-shadow:var(--shadow-xs);font-family:inherit;font-size:var(--font-size-sm);padding:1rem;position:relative;transition:var(--transition-normal)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--border-focus);box-shadow:var(--shadow-focus);transform:translateY(-1px)}.form-group input:hover:not(:focus),.form-group select:hover:not(:focus),.form-group textarea:hover:not(:focus){border-color:var(--border-hover);box-shadow:var(--shadow-sm)}.form-group textarea{font-family:inherit;line-height:var(--line-height-relaxed);min-height:120px;resize:vertical}.form-group select{-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 1rem center;background-repeat:no-repeat;background-size:1rem;cursor:pointer;padding-right:3rem}.form-group.error input,.form-group.error select,.form-group.error textarea{border-color:var(--color-danger);box-shadow:0 0 0 3px var(--color-danger-light)}.form-group .error-message{align-items:center;animation:var(--animation-shake);color:var(--color-danger);display:flex;font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);gap:var(--spacing-xs);margin-top:var(--spacing-xs)}.form-group.success input,.form-group.success select,.form-group.success textarea{border-color:var(--color-success);box-shadow:0 0 0 3px var(--color-success-light)}.form-group .success-message{align-items:center;animation:var(--animation-fade-in);color:var(--color-success);display:flex;font-weight:var(--font-weight-medium);gap:var(--spacing-xs)}.form-group .help-text,.form-group .success-message{font-size:var(--font-size-xs);margin-top:var(--spacing-xs)}.form-group .help-text{color:var(--text-secondary);line-height:var(--line-height-relaxed)}.form-actions{border-top:1px solid var(--border-light);flex-wrap:wrap;gap:var(--spacing-md);margin-top:var(--spacing-xl);padding-top:var(--spacing-lg)}.form-button{align-items:center;border:none;border-radius:var(--radius-md);box-shadow:var(--shadow-xs);cursor:pointer;display:flex;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);gap:var(--spacing-xs);justify-content:center;min-width:120px;overflow:hidden;padding:1rem 2rem;position:relative}.form-button,.form-button:before{transition:var(--transition-normal)}.form-button:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;width:100%}.form-button:hover:before{left:100%}.form-button.primary{background:var(--gradient-primary);color:var(--text-inverse)}.form-button.primary:hover:not(:disabled){box-shadow:var(--shadow-md),var(--shadow-glow);transform:translateY(-2px)}.form-button.primary:active{box-shadow:var(--shadow-xs);transform:translateY(0)}.form-button.secondary{background:var(--gradient-secondary);color:var(--text-inverse)}.form-button.secondary:hover:not(:disabled){box-shadow:var(--shadow-md);transform:translateY(-2px)}.form-button.danger{background:var(--gradient-danger);color:var(--text-inverse)}.form-button.danger:hover:not(:disabled){box-shadow:var(--shadow-md),var(--shadow-glow-danger);transform:translateY(-2px)}.form-button:disabled{background:var(--background-disabled);box-shadow:none;color:var(--text-disabled);cursor:not-allowed;opacity:.6}.form-button:disabled:hover{box-shadow:none;transform:none}.form-button:disabled:before{display:none}.form-button.loading{pointer-events:none;position:relative}.form-button.loading:after{animation:var(--animation-spin);border:2px solid #0000;border-radius:50%;border-top-color:currentcolor;content:"";height:16px;position:absolute;width:16px}.form-section{background:var(--background-secondary);border:1px solid var(--border-light);border-radius:var(--radius-lg);margin-bottom:var(--spacing-lg);padding:var(--spacing-lg)}.form-section-title{align-items:center;border-bottom:1px solid var(--border-light);color:var(--text-primary);display:flex;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);gap:var(--spacing-sm);margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-sm)}.file-upload{display:inline-block;position:relative;width:100%}.file-upload input[type=file]{cursor:pointer;height:100%;opacity:0;position:absolute;width:100%}.file-upload-label{align-items:center;background:var(--background-secondary);border:2px dashed var(--border-color);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;display:flex;gap:var(--spacing-sm);justify-content:center;padding:2rem;text-align:center;transition:var(--transition-normal)}.file-upload-label:hover{background:var(--background-hover);border-color:var(--border-focus);color:var(--text-primary)}.file-upload.dragover .file-upload-label{background:var(--color-primary-light);border-color:var(--color-primary);color:var(--color-primary)}.frequency-input-group{align-items:center;display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.frequency-input-group span{color:var(--text-secondary);font-weight:var(--font-weight-medium);white-space:nowrap}.frequency-number{text-align:center;width:80px!important}.frequency-unit{width:100px!important}.frequency-input-group .form-field{margin:0}@media (max-width:768px){.frequency-input-group{align-items:flex-start;flex-direction:column;gap:var(--spacing-xs)}.frequency-number,.frequency-unit{width:100%!important}.customer-form-container{margin:var(--spacing-sm);padding:var(--spacing-lg)}.form-row{grid-template-columns:1fr}.form-actions{flex-direction:column;gap:var(--spacing-sm)}.form-button{min-width:auto;width:100%}.form-section{padding:var(--spacing-md)}}@media (max-width:480px){.customer-form-container{padding:var(--spacing-md)}.customer-form-title{font-size:var(--font-size-xl)}.form-group input,.form-group select,.form-group textarea{padding:.875rem}.file-upload-label{padding:1.5rem}}@keyframes slideInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.customer-form-container{animation:slideInUp .3s ease-out}@media (prefers-color-scheme:dark){.file-upload-label{border-color:var(--border-color)}.file-upload-label:hover{border-color:var(--border-focus)}}.visitor-form-container{background:var(--background-primary);border:1px solid var(--border-light);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);margin:0 auto;max-width:800px;overflow:hidden;padding:var(--spacing-xl);position:relative}.visitor-form-container:before{background:var(--gradient-primary);content:"";height:4px;left:0;position:absolute;right:0;top:0}.visitor-form-title{color:var(--text-primary);font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-lg);position:relative;text-align:center}.visitor-form-title:after{background:var(--gradient-primary);border-radius:var(--radius-full);bottom:0;content:"";height:3px;left:50%;position:absolute;transform:translateX(-50%);width:120px}.visitor-form-steps{background:var(--background-secondary);border:1px solid var(--border-light);border-radius:var(--radius-lg);display:flex;justify-content:center;margin-bottom:var(--spacing-xl);padding:var(--spacing-lg)}.visitor-step{align-items:center;border-radius:var(--radius-md);display:flex;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);position:relative;transition:var(--transition-normal)}.visitor-step:not(:last-child):after{background:var(--border-color);content:"";height:2px;position:absolute;right:calc(var(--spacing-lg)*-1);top:50%;transform:translateY(-50%);width:var(--spacing-lg)}.visitor-step.active{background:var(--color-primary-light);color:var(--color-primary-dark)}.visitor-step.completed{background:var(--color-success-light);color:var(--color-success-dark)}.visitor-step.completed:after{background:var(--color-success)}.visitor-step-icon{align-items:center;background:var(--background-primary);border-radius:50%;display:flex;font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);height:24px;justify-content:center;width:24px}.visitor-step.active .visitor-step-icon{background:var(--color-primary);color:var(--text-inverse)}.visitor-step.completed .visitor-step-icon{background:var(--color-success);color:var(--text-inverse)}.visitor-step-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.visitor-form{display:flex;flex-direction:column;gap:var(--spacing-xl)}.visitor-form-section{background:var(--background-secondary);border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-xs);padding:var(--spacing-xl);transition:var(--transition-normal)}.visitor-form-section:hover{box-shadow:var(--shadow-sm);transform:translateY(-1px)}.visitor-form-section-title{align-items:center;border-bottom:2px solid var(--border-light);color:var(--text-primary);display:flex;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);gap:var(--spacing-sm);margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md)}.visitor-form-section-icon{color:var(--color-primary);height:20px;width:20px}.visitor-form-row{grid-gap:var(--spacing-lg);display:grid;gap:var(--spacing-lg);grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:var(--spacing-lg)}.visitor-form-row:last-child{margin-bottom:0}.visitor-form-row.single{grid-template-columns:1fr}.visitor-form-row.double{grid-template-columns:repeat(2,1fr)}.visitor-form-row.triple{grid-template-columns:repeat(3,1fr)}.visitor-form-group{display:flex;flex-direction:column;gap:var(--spacing-sm);position:relative}.visitor-form-group.required .visitor-form-label:after{color:var(--color-danger);content:" *";font-weight:var(--font-weight-bold)}.visitor-form-label{align-items:center;color:var(--text-primary);display:flex;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);gap:var(--spacing-xs);margin-bottom:var(--spacing-xs)}.visitor-form-label-icon{color:var(--color-primary);height:16px;width:16px}.visitor-form-input,.visitor-form-select,.visitor-form-textarea{background:var(--background-primary);border:2px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-xs);color:var(--text-primary);font-family:inherit;font-size:var(--font-size-sm);padding:.875rem;transition:var(--transition-normal);width:100%}.visitor-form-input:focus,.visitor-form-select:focus,.visitor-form-textarea:focus{background:var(--background-primary);border-color:var(--border-focus);box-shadow:var(--shadow-focus);outline:none;transform:translateY(-1px)}.visitor-form-input:hover,.visitor-form-select:hover,.visitor-form-textarea:hover{border-color:var(--border-hover);box-shadow:var(--shadow-sm)}.visitor-form-input.error,.visitor-form-select.error,.visitor-form-textarea.error{background:var(--background-error);border-color:var(--border-error);box-shadow:var(--shadow-error)}.visitor-form-input.success,.visitor-form-select.success,.visitor-form-textarea.success{background:var(--background-success);border-color:var(--border-success);box-shadow:var(--shadow-success)}.visitor-form-input:disabled,.visitor-form-select:disabled,.visitor-form-textarea:disabled{background:var(--background-disabled);border-color:var(--border-color);color:var(--text-disabled);cursor:not-allowed;opacity:.6}.visitor-form-select{-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right .875rem center;background-repeat:no-repeat;background-size:1rem;cursor:pointer;padding-right:2.5rem}.visitor-form-textarea{font-family:inherit;line-height:var(--line-height-relaxed);min-height:120px;resize:vertical}.visitor-datetime-group{grid-gap:var(--spacing-md);align-items:end;display:grid;gap:var(--spacing-md);grid-template-columns:1fr 1fr}.visitor-datetime-input{position:relative}.visitor-datetime-input input[type=date],.visitor-datetime-input input[type=datetime-local],.visitor-datetime-input input[type=time]{padding-right:2.5rem}.visitor-checkbox-group{grid-gap:var(--spacing-md);background:var(--background-primary);border:2px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-xs);display:grid;gap:var(--spacing-md);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));padding:var(--spacing-md)}.visitor-checkbox-item{align-items:center;border-radius:var(--radius-sm);cursor:pointer;display:flex;gap:var(--spacing-sm);padding:var(--spacing-sm);transition:var(--transition-normal)}.visitor-checkbox-item:hover{background:var(--background-hover)}.visitor-checkbox-item input[type=checkbox]{accent-color:var(--color-primary);cursor:pointer;height:18px;width:18px}.visitor-checkbox-item label{color:var(--text-primary);cursor:pointer;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.visitor-radio-group{grid-gap:var(--spacing-md);background:var(--background-primary);border:2px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-xs);display:grid;gap:var(--spacing-md);grid-template-columns:repeat(auto-fit,minmax(150px,1fr));padding:var(--spacing-md)}.visitor-radio-item{align-items:center;border-radius:var(--radius-sm);cursor:pointer;display:flex;gap:var(--spacing-sm);padding:var(--spacing-sm);transition:var(--transition-normal)}.visitor-radio-item:hover{background:var(--background-hover)}.visitor-radio-item input[type=radio]{accent-color:var(--color-primary);cursor:pointer;height:18px;width:18px}.visitor-radio-item label{color:var(--text-primary);cursor:pointer;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.visitor-file-upload{background:var(--background-primary);border:2px dashed var(--border-color);border-radius:var(--radius-lg);cursor:pointer;overflow:hidden;padding:var(--spacing-xl);position:relative;text-align:center;transition:var(--transition-normal)}.visitor-file-upload:hover{background:var(--background-hover);border-color:var(--border-focus);box-shadow:var(--shadow-md);transform:translateY(-2px)}.visitor-file-upload.dragover{background:var(--color-primary-light);border-color:var(--color-primary);box-shadow:var(--shadow-glow)}.visitor-file-upload-icon{color:var(--color-primary);height:48px;margin:0 auto var(--spacing-md);width:48px}.visitor-file-upload-text{color:var(--text-primary);font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);margin-bottom:var(--spacing-sm)}.visitor-file-upload-hint{color:var(--text-secondary);font-size:var(--font-size-sm);line-height:var(--line-height-relaxed)}.visitor-file-upload input[type=file]{cursor:pointer;height:100%;left:0;opacity:0;position:absolute;top:0;width:100%}.visitor-uploaded-files{margin-top:var(--spacing-md)}.visitor-uploaded-file{align-items:center;background:var(--background-secondary);border:1px solid var(--border-light);border-radius:var(--radius-md);display:flex;justify-content:space-between;margin-bottom:var(--spacing-sm);padding:var(--spacing-md);transition:var(--transition-normal)}.visitor-uploaded-file:hover{box-shadow:var(--shadow-sm);transform:translateY(-1px)}.visitor-uploaded-file:last-child{margin-bottom:0}.visitor-file-info{align-items:center;display:flex;flex:1 1;gap:var(--spacing-sm);min-width:0}.visitor-file-icon{color:var(--color-primary);flex-shrink:0;height:24px;width:24px}.visitor-file-details{display:flex;flex-direction:column;gap:var(--spacing-xs);min-width:0}.visitor-file-name{color:var(--text-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.visitor-file-size{color:var(--text-secondary);font-size:var(--font-size-xs)}.visitor-file-actions{display:flex;gap:var(--spacing-xs)}.visitor-file-action{align-items:center;border:none;border-radius:var(--radius-sm);cursor:pointer;display:flex;height:32px;justify-content:center;padding:var(--spacing-xs);transition:var(--transition-normal);width:32px}.visitor-file-action.download{background:var(--color-info-light);color:var(--color-info-dark)}.visitor-file-action.delete{background:var(--color-danger-light);color:var(--color-danger-dark)}.visitor-file-action:hover{box-shadow:var(--shadow-sm);transform:scale(1.1)}.visitor-form-error,.visitor-form-success{align-items:center;animation:slideInDown .3s ease-out;border-radius:var(--radius-md);display:flex;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);gap:var(--spacing-sm);margin-top:var(--spacing-sm);padding:var(--spacing-md)}.visitor-form-error{background:var(--background-error);border:1px solid var(--border-error);color:var(--text-error)}.visitor-form-success{background:var(--background-success);border:1px solid var(--border-success);color:var(--text-success)}.visitor-form-error-icon,.visitor-form-success-icon{flex-shrink:0;height:18px;width:18px}.visitor-form-help{align-items:center;color:var(--text-secondary);display:flex;font-size:var(--font-size-xs);gap:var(--spacing-xs);line-height:var(--line-height-relaxed);margin-top:var(--spacing-xs)}.visitor-form-help-icon{color:var(--color-info);flex-shrink:0;height:14px;width:14px}.visitor-form-actions{border-top:2px solid var(--border-light);display:flex;flex-wrap:wrap;gap:var(--spacing-md);justify-content:center;margin-top:var(--spacing-xl);padding-top:var(--spacing-xl)}.visitor-form-button{align-items:center;border:none;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);cursor:pointer;display:flex;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);gap:var(--spacing-sm);justify-content:center;min-width:120px;overflow:hidden;padding:var(--spacing-md) var(--spacing-xl);position:relative;transition:var(--transition-normal)}.visitor-form-button:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:var(--transition-normal);width:100%}.visitor-form-button:hover:before{left:100%}.visitor-form-button.primary{background:var(--gradient-primary);color:var(--text-inverse)}.visitor-form-button.primary:hover{box-shadow:var(--shadow-lg),var(--shadow-glow);transform:translateY(-2px)}.visitor-form-button.secondary{background:var(--gradient-secondary);color:var(--text-inverse)}.visitor-form-button.secondary:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.visitor-form-button.danger{background:var(--gradient-danger);color:var(--text-inverse)}.visitor-form-button.danger:hover{box-shadow:var(--shadow-lg),var(--shadow-glow-danger);transform:translateY(-2px)}.visitor-form-button.outline{background:#0000;border:2px solid var(--border-color);color:var(--text-primary)}.visitor-form-button.outline:hover{background:var(--background-hover);border-color:var(--border-focus);box-shadow:var(--shadow-md);transform:translateY(-2px)}.visitor-form-button:disabled{background:var(--background-disabled);border-color:var(--border-color);box-shadow:none;color:var(--text-disabled);cursor:not-allowed;opacity:.5}.visitor-form-button:disabled:hover{box-shadow:none;transform:none}.visitor-form-button:disabled:before{display:none}.visitor-form-button.loading{pointer-events:none}.visitor-form-button.loading .visitor-button-text{opacity:0}.visitor-form-button.loading:after{animation:spin 1s linear infinite;border:2px solid #0000;border-radius:50%;border-top-color:currentcolor;content:"";height:20px;position:absolute;width:20px}.visitor-form-progress{margin-bottom:var(--spacing-xl)}.visitor-progress-bar{background:var(--background-secondary);border-radius:var(--radius-full);box-shadow:inset var(--shadow-xs);height:8px;overflow:hidden;width:100%}.visitor-progress-fill{background:var(--gradient-primary);border-radius:var(--radius-full);height:100%;position:relative;transition:width .3s ease}.visitor-progress-fill:after{animation:shimmer 2s infinite;background:linear-gradient(90deg,#0000,#ffffff4d,#0000);bottom:0;content:"";left:0;position:absolute;right:0;top:0}.visitor-progress-text{color:var(--text-secondary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);margin-top:var(--spacing-sm);text-align:center}.visitor-preview-card{background:var(--background-secondary);border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);margin-top:var(--spacing-xl);padding:var(--spacing-xl)}.visitor-preview-title{color:var(--text-primary);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);margin-bottom:var(--spacing-lg);text-align:center}.visitor-preview-content{grid-gap:var(--spacing-md);display:grid;gap:var(--spacing-md);grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.visitor-preview-item{display:flex;flex-direction:column;gap:var(--spacing-xs)}.visitor-preview-label{color:var(--text-secondary);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);letter-spacing:.5px;text-transform:uppercase}.visitor-preview-value{color:var(--text-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);word-break:break-word}@media (max-width:768px){.visitor-form-container{margin:var(--spacing-sm);padding:var(--spacing-lg)}.visitor-checkbox-group,.visitor-datetime-group,.visitor-form-row,.visitor-form-row.double,.visitor-form-row.triple,.visitor-radio-group{grid-template-columns:1fr}.visitor-form-actions{align-items:stretch;flex-direction:column}.visitor-form-button{min-width:auto}.visitor-form-steps{flex-direction:column;gap:var(--spacing-sm)}.visitor-step:not(:last-child):after{display:none}.visitor-preview-content{grid-template-columns:1fr}}@media (max-width:480px){.visitor-form-container{padding:var(--spacing-md)}.visitor-form-title{font-size:var(--font-size-xl)}.visitor-file-upload,.visitor-form-section{padding:var(--spacing-lg)}.visitor-uploaded-file{align-items:stretch;flex-direction:column;gap:var(--spacing-sm)}.visitor-file-actions{justify-content:center}}@keyframes slideInDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes shimmer{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}.visitor-form-container,.visitor-form-section{animation:slideInDown .3s ease-out}.visitor-form-section{animation-delay:0s;animation-delay:calc(var(--index, 0)*.1s)}@media (prefers-color-scheme:dark){.visitor-file-upload{border-color:var(--border-color-dark)}.visitor-file-upload:hover{border-color:var(--border-focus-dark)}.visitor-preview-card{background:var(--background-secondary-dark);border-color:var(--border-light-dark)}}.visitor-details-modal{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.modal-overlay{padding:20px}.visitor-details-modal.modal-content{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0003;display:flex!important;flex-direction:column!important;max-height:95vh!important;max-width:95vw!important;min-width:1200px!important;overflow:hidden;position:relative!important;width:1200px!important}.modal-header{background:#f8fafc;padding:20px 24px}.modal-header h2{color:#1e293b}.modal-actions{background:#fff;border-top:1px solid #e2e8f0;gap:16px;margin-top:32px;padding:24px 24px 16px}.btn{border-radius:10px;box-shadow:0 2px 8px #0000001a;padding:12px 24px;transition:all .3s ease}.btn:hover{box-shadow:0 6px 20px #00000026;transform:translateY(-2px)}.btn-primary{background:linear-gradient(135deg,#3b82f6,#2563eb)}.btn-primary:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8)}.btn-secondary{background:linear-gradient(135deg,#6b7280,#4b5563);color:#fff}.btn-secondary:hover{background:linear-gradient(135deg,#4b5563,#374151)}.btn-success{background:linear-gradient(135deg,#10b981,#059669)}.btn-success:hover{background:linear-gradient(135deg,#059669,#047857)}.visitor-info-card{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 4px 12px #0000000d;margin-bottom:16px;overflow:hidden;padding:0;position:relative}.visitor-info-card:before{background:linear-gradient(90deg,#10b981,#3b82f6,#8b5cf6);content:"";height:4px;left:0;position:absolute;right:0;top:0}.visitor-info-header{display:flex;flex-direction:column;padding:20px 20px 0}.visitor-info-card h3{align-items:center;color:#1e293b;display:flex;font-size:1.25rem;font-weight:600;gap:8px;margin:0 0 16px}.tab-navigation{background-color:#f8fafc;border-bottom:1px solid #e2e8f0;gap:2px;margin-bottom:0;padding:0 10px}.tab-button{align-items:center;background:#0000;border:none;border-bottom:3px solid #0000;color:#64748b;cursor:pointer;display:flex;font-size:.9rem;font-weight:500;gap:8px;padding:12px 16px;transition:all .2s ease}.tab-button.active,.tab-button:hover{background-color:#3b82f60d;color:#3b82f6}.tab-button.active{border-bottom-color:#3b82f6}.tab-icon{font-size:1rem}.tab-content{padding:20px}.visitor-info-list{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));list-style:none;margin:0;padding:0}.reservation-info-section{margin-top:24px}.reservation-info-section h3{align-items:center;background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border-left:4px solid #3b82f6;border-radius:12px;color:#1e293b;display:flex;font-size:1.2rem;font-weight:600;gap:10px;margin:0 0 20px;padding:16px 20px}.reservation-info-section h3:before{content:"📅";font-size:1.1em}.reservation-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 2px 8px #0000000a;margin-bottom:16px;padding:20px;transition:all .3s ease}.reservation-card:hover{border-color:#3b82f6;box-shadow:0 8px 25px #3b82f626;transform:translateY(-2px)}.reservation-info{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.reservation-field{display:flex;flex-direction:column;gap:4px}.reservation-field .label{color:#64748b;font-size:.75rem;font-weight:500;letter-spacing:.025em;text-transform:uppercase}.reservation-field .value{color:#1e293b;font-size:.875rem;font-weight:500}.no-reservation{background:#f9fafb;border:1px dashed #d1d5db;border-radius:8px;color:#9ca3af;padding:40px;text-align:center}.follow-up-records-section{margin-top:32px}.follow-up-header{align-items:center;background:linear-gradient(135deg,#fefbf3,#fef3c7);border-left:4px solid #f59e0b;border-radius:12px;margin-bottom:20px;padding:16px 20px}.visit-records-section{margin-top:32px}.visit-records-header{align-items:center;background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border-left:4px solid #0ea5e9;border-radius:12px;display:flex;justify-content:space-between;margin-bottom:20px;padding:16px 20px}.visit-records-header h3{align-items:center;color:#1e293b;display:flex;font-size:1.2rem;font-weight:600;gap:10px;margin:0}.visit-records-header h3:before{content:"🏢";font-size:1.1em}.visit-record{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 2px 8px #0000000a;margin-bottom:16px;padding:20px;transition:all .3s ease}.visit-record:hover{border-color:#0ea5e9;box-shadow:0 8px 25px #0ea5e926;transform:translateY(-2px)}.visit-record-info{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.visit-record-field{display:flex;flex-direction:column;gap:4px}.visit-record-field .label{color:#64748b;font-size:.75rem;font-weight:500;letter-spacing:.025em;text-transform:uppercase}.visit-record-field .value{color:#1e293b;font-size:.875rem;font-weight:500}.no-visit-records{background:#f9fafb;border:1px dashed #d1d5db;border-radius:8px;color:#9ca3af;padding:40px;text-align:center}.visit-records-list{max-height:400px;overflow-y:auto;padding-right:8px}.follow-up-header h3{align-items:center;color:#1e293b;display:flex;font-size:1.2rem;font-weight:600;gap:10px;margin:0}.follow-up-header h3:before{content:"💬";font-size:1.1em}.add-follow-up-form{background:linear-gradient(135deg,#f9fafb,#f3f4f6);border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 2px 8px #0000000a;margin-bottom:20px;padding:20px}.follow-up-actions{display:flex;gap:12px;margin-top:12px}.follow-up-list{max-height:400px;overflow-y:auto;padding-right:8px}.follow-up-record{background:linear-gradient(135deg,#fff,#f8f9fa);border:1px solid #e9ecef;border-radius:12px;box-shadow:0 2px 8px #0000000f;margin-bottom:16px;padding:20px;position:relative;transition:all .3s ease}.follow-up-record:hover{box-shadow:0 4px 16px #0000001a;transform:translateY(-2px)}.follow-up-content{color:#374151;font-size:14px;line-height:1.5;margin-bottom:8px;white-space:pre-wrap}.follow-up-meta{color:#6c757d;flex-wrap:wrap;font-size:13px;gap:20px;margin-top:0;padding-top:12px}.follow-up-meta span{align-items:center;background:#6c757d1a;border-radius:6px;display:flex;font-weight:500;gap:6px;padding:4px 8px}.visit-time{background:#52c41a1a!important;border:1px solid #52c41a33;color:#52c41a!important}.visit-count{background:#1890ff1a!important;border:1px solid #1890ff33;color:#1890ff!important}.follow-up-header{align-items:flex-start;border-bottom:1px solid #f0f0f0;display:flex;justify-content:space-between;margin-bottom:16px;padding-bottom:12px}.follow-up-header .follow-up-content{color:#2c3e50;flex:1 1;font-size:15px;font-weight:500;line-height:1.7;margin-bottom:0;margin-right:15px}.delete-record-btn{background:linear-gradient(135deg,#ff6b6b,#ee5a52);border:none;border-radius:8px;box-shadow:0 2px 4px #ee5a524d;color:#fff;cursor:pointer;font-size:12px;font-weight:500;min-width:60px;padding:8px 16px;transition:all .3s ease}.delete-record-btn:hover{background:linear-gradient(135deg,#ff5252,#d32f2f);box-shadow:0 4px 8px #ee5a5266;transform:translateY(-1px)}.delete-record-btn:active{box-shadow:0 2px 4px #ee5a524d;transform:translateY(0)}.follow-up-time{background:#6c757d1a!important;color:#6c757d!important;font-weight:500}.follow-up-author{background:#722ed11a!important;border:1px solid #722ed133;border-radius:6px;color:#722ed1!important;font-weight:600;padding:4px 8px}.no-follow-up{color:#9ca3af;padding:40px;text-align:center}.no-follow-up p{font-size:14px;margin:0}.visitor-info-item{background:#fff;border:1px solid #e2e8f0;border-radius:10px;box-shadow:0 2px 4px #00000005;padding:16px;position:relative;transition:all .3s ease}.visitor-info-item:hover{border-color:#10b981;box-shadow:0 6px 20px #10b9811f;transform:translateY(-2px)}.visitor-info-label{color:#475569;display:block;font-size:.8rem;font-weight:600;letter-spacing:.5px;margin-bottom:6px;text-transform:uppercase}.visitor-info-value{color:#1e293b;font-size:.95rem;line-height:1.5;min-height:20px;word-break:break-word}.edit-mode .visitor-info-item{background:#fefefe;border-color:#d1d5db}.edit-mode .visitor-info-value input,.edit-mode .visitor-info-value select,.edit-mode .visitor-info-value textarea{background:#fff;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;padding:8px 12px;transition:border-color .2s ease;width:100%}.edit-mode .visitor-info-value input:focus,.edit-mode .visitor-info-value select:focus,.edit-mode .visitor-info-value textarea:focus{border-color:#10b981;box-shadow:0 0 0 3px #10b9811a;outline:none}.related-customer-lead-section{margin-top:32px}.related-customer-lead-section h3{align-items:center;background:linear-gradient(135deg,#f0fdf4,#dcfce7);border-left:4px solid #10b981;border-radius:12px;color:#1e293b;display:flex;font-size:1.2rem;font-weight:600;gap:10px;margin:0 0 20px;padding:16px 20px}.related-customer-lead-section h3:before{content:"📋";font-size:1.1em}.customer-lead-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 2px 8px #0000000a;margin-bottom:16px;padding:20px;transition:all .3s ease}.customer-lead-card:hover{border-color:#10b981;box-shadow:0 8px 25px #10b98126;transform:translateY(-2px)}.customer-lead-info{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.customer-lead-field{display:flex;flex-direction:column;gap:4px}.customer-lead-field .label{color:#64748b;font-size:.75rem;font-weight:500;letter-spacing:.025em;text-transform:uppercase}.customer-lead-field .value{color:#1e293b;font-size:.875rem;font-weight:500}.status-badge{border-radius:6px;font-size:.75rem;letter-spacing:.025em}.status-badge.active{background:#dcfce7;border:1px solid #bbf7d0;color:#166534}.status-badge.inactive{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}.status-badge.pending{background:#fef3c7;border:1px solid #fde68a;color:#92400e}.modal-actions .btn{align-items:center;display:inline-flex;gap:4px;justify-content:center}.error-message{background:#fef2f2;border:1px solid #fecaca;border-radius:6px;color:#991b1b;font-size:.875rem;margin-bottom:16px;padding:12px}.visitor-info-value label{align-items:center;cursor:pointer;display:flex;font-size:.875rem;gap:8px}.visitor-info-value input[type=checkbox]{accent-color:#10b981;margin:0;width:auto!important}@media (max-width:768px){.modal-overlay{align-items:flex-start;padding:20px 10px 10px}.visitor-details-modal.modal-content{border-radius:8px;margin:0;max-height:calc(100vh - 40px)!important;max-width:100%!important;min-width:0!important;min-width:auto!important;width:100%!important}.modal-header{background:#f8fafc;padding:16px 20px;position:-webkit-sticky;position:sticky;top:0;z-index:10}.modal-header h2{font-size:1.25rem}.visitor-details-modal .modal-body{max-height:calc(100vh - 180px);padding:16px 24px 16px 20px}.modal-actions{background:#fff;border-top:1px solid #e2e8f0;bottom:0;margin-top:0;padding:12px 20px;position:-webkit-sticky;position:sticky;z-index:10}.visitor-info-list{gap:8px}.customer-lead-info,.visitor-info-list{grid-template-columns:1fr}.visitor-info-card{margin-bottom:12px}.visitor-info-header{padding:16px 16px 0}.tab-content{padding:16px}.tab-navigation{flex-wrap:wrap;gap:1px;padding:0 8px}.tab-button{flex:1 1;font-size:.8rem;justify-content:center;min-width:0;padding:10px 12px}.tab-title{display:none}.tab-icon{font-size:1.1rem}.visitor-info-item{padding:12px}.visitor-info-label{font-size:.75rem;margin-bottom:4px}.visitor-info-value{font-size:.9rem}.follow-up-record{margin-bottom:12px;padding:16px}.follow-up-meta{flex-direction:column;gap:8px}.follow-up-meta span{font-size:12px;padding:3px 6px}.btn{font-size:13px;padding:10px 16px}.modal-actions{flex-direction:column;gap:8px}.modal-actions .btn{justify-content:center;width:100%}.customer-lead-card,.follow-up-card,.reservation-info{margin-bottom:12px}.follow-up-list{max-height:300px}.follow-up-header{align-items:stretch;flex-direction:column;gap:8px}.follow-up-header .follow-up-content{margin-bottom:8px;margin-right:0}.delete-record-btn{align-self:flex-end;font-size:11px;padding:6px 12px}}@media (max-width:480px){.modal-overlay{padding:10px 5px 5px}.visitor-details-modal.modal-content{border-radius:6px;max-height:calc(100vh - 20px)!important}.modal-header{padding:12px 16px}.modal-header h2{font-size:1.1rem}.visitor-details-modal .modal-body{max-height:calc(100vh - 140px);padding:12px 20px 12px 16px}.modal-actions{padding:10px 16px}.visitor-info-header{padding:12px 12px 0}.tab-content{padding:12px}.tab-navigation{padding:0 6px}.tab-button{font-size:.75rem;padding:8px 6px}.tab-icon{font-size:1rem}.visitor-info-item{padding:10px}.visitor-info-label{font-size:.7rem}.visitor-info-value{font-size:.85rem}.follow-up-record{padding:12px}.follow-up-content{font-size:13px}.follow-up-meta span{font-size:11px;padding:2px 4px}.btn{font-size:12px;padding:8px 12px}.delete-record-btn{font-size:10px;padding:4px 8px}.follow-up-list{max-height:250px}}.visitor-details-modal .modal-body{box-sizing:border-box!important;display:block!important;flex:1 1!important;max-height:calc(80vh - 120px);overflow-y:auto;padding:20px 28px 20px 24px;width:100%!important}.modal-body::-webkit-scrollbar{width:6px}.modal-body::-webkit-scrollbar-track{background:#f1f5f9;border-radius:3px}.modal-body::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.modal-body::-webkit-scrollbar-thumb:hover{background:#94a3b8}.room-groups{display:flex;flex-direction:column;gap:5px}.room-group-item{align-items:center;display:flex;gap:8px}.group-label{color:#4b5563;font-weight:500;min-width:60px}.room-number{background-color:#f3f4f6;border-radius:4px;color:#1f2937;font-size:.9em;padding:2px 8px}.visitor-details-modal{align-items:center;animation:modalOverlayFadeIn .3s ease-out;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0009;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:var(--z-modal)}.modal-overlay{z-index:calc(var(--z-modal) + 10)}.visitor-details-content{animation:modalSlideIn .4s cubic-bezier(.16,1,.3,1);background:var(--background-primary);border:1px solid var(--border-light);border-radius:16px;box-shadow:0 25px 50px -12px #00000040,0 0 0 1px #ffffff1a;max-height:90vh;max-width:800px;overflow:auto;padding:24px 32px;position:relative;width:90%}.visitor-details-content h2{border-bottom:1px solid var(--border-light);color:var(--text-primary);font-size:1.5rem;font-weight:600;margin:0 0 20px;padding-bottom:12px}.visitor-details-content h3{color:var(--text-primary);font-size:1.25rem;font-weight:600;margin:24px 0 16px}.visitor-details-content ul{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));list-style:none;margin:0;padding:0}.visitor-details-content li{background:var(--background-secondary);border:1px solid var(--border-light);border-radius:8px;padding:12px 16px;transition:all .2s ease}.visitor-details-content li:hover{border-color:var(--primary-color);box-shadow:0 4px 12px #3b82f61a;transform:translateY(-1px)}.visitor-details-content strong{color:var(--text-secondary);display:block;font-size:.875rem;font-weight:600;margin-bottom:4px}.close-button{align-items:center;background:var(--background-secondary);border:1px solid var(--border-light);border-radius:50%;display:flex;font-size:18px;height:32px;justify-content:center;line-height:1;position:absolute;right:16px;top:16px;transition:all .2s ease;width:32px}.close-button:hover{background:var(--danger-color);color:#fff;transform:scale(1.1)}.btn-edit{background:var(--primary-color);border-radius:6px;margin-top:16px;padding:8px 16px}.btn-edit:hover{background:var(--primary-dark);box-shadow:0 4px 12px #3b82f633;transform:translateY(-1px)}.btn-view-details{background:var(--info-color);border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:500;margin-top:8px;padding:8px 16px;transition:all .2s ease}.btn-view-details:hover{background:var(--info-dark);box-shadow:0 4px 12px #06b6d433;transform:translateY(-1px)}@media (max-width:768px){.visitor-details-content{padding:16px;width:95%}.visitor-details-content ul{grid-template-columns:1fr}}.visitor-details-content .edit-mode{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:1px solid #e2e8f0;border-radius:12px;margin-bottom:24px;overflow:hidden;padding:24px;position:relative}.visitor-details-content .edit-mode:before{background:linear-gradient(90deg,#3b82f6,#8b5cf6,#06b6d4);content:"";height:4px;left:0;position:absolute;right:0;top:0}.visitor-details-content .edit-mode h3{align-items:center;color:#1e293b;display:flex;font-size:1.25rem;font-weight:600;gap:8px;margin:0 0 20px}.visitor-details-content .edit-mode h3:before{content:"✏️";font-size:1.1em}.visitor-details-content .edit-mode input,.visitor-details-content .edit-mode select,.visitor-details-content .edit-mode textarea{background:#fff;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;padding:8px 12px;transition:border-color .2s ease;width:100%}.visitor-details-content .edit-mode input:focus,.visitor-details-content .edit-mode select:focus,.visitor-details-content .edit-mode textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.visitor-details-content .edit-mode textarea{min-height:80px;resize:vertical}.modal-actions{border-top:1px solid var(--border-light);gap:12px;margin-top:24px;padding-top:16px}.modal-actions button{border-radius:6px;cursor:pointer;font-weight:500;min-width:80px;padding:8px 16px;transition:all .2s ease}.modal-actions button:first-child{background:var(--primary-color);border:none;color:#fff}.modal-actions button:first-child:hover{background:var(--primary-dark);box-shadow:0 4px 12px #3b82f633;transform:translateY(-1px)}.modal-actions button:last-child{background:var(--background-secondary);border:1px solid var(--border-light);color:var(--text-secondary)}.modal-actions button:last-child:hover{background:var(--background-tertiary);color:var(--text-primary)}.reservation-modal{--modal-bg:var(--background-primary);--text-main:var(--text-primary);--text-secondary:var(--text-secondary);--border-color:var(--border-color);--radius-md:var(--radius-md);--spacing-md:1rem}.modal-overlay{align-items:flex-start;padding-top:20px}.modal-content{display:flex;flex-direction:column;max-height:90vh;max-width:500px;width:95%}.modal-scrollable{flex-grow:1;overflow-y:auto;padding:20px}@media (max-width:480px){.modal-content{margin:0 10px;max-height:85vh;width:100%}.edit-inputs{flex-direction:column}.edit-inputs input{min-width:auto}.time-inputs{flex-direction:column}.time-inputs span{display:none}.modal-actions{background:#fff;border-top:1px solid #eee;bottom:0;padding:15px;position:-webkit-sticky;position:sticky}}.modal-header{margin-bottom:1.5rem}.modal-title{font-size:1.25rem;margin:0 0 1.5rem}.form-group label,.modal-title{color:var(--text-main)}.form-group input[type=datetime-local],.form-group select,.form-group textarea{background:#fff;border:1px solid var(--border-color);border-radius:calc(var(--radius-md) - 2px);padding:.75rem;transition:border-color .2s ease;width:100%}.form-group input[type=datetime-local]:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--primary-color);box-shadow:0 0 0 2px #4299e11a;outline:none}.time-range-group{margin-bottom:1.25rem}.time-range-group label{color:var(--text-main);margin-bottom:.5rem}.time-inputs{gap:.75rem}.time-inputs input[type=datetime-local]{background:#fff;border:1px solid var(--border-color);border-radius:calc(var(--radius-md) - 2px);flex:1 1;padding:.75rem;transition:border-color .2s ease}.time-inputs input[type=datetime-local]:focus{border-color:var(--primary-color);box-shadow:0 0 0 2px #4299e11a;outline:none}.time-inputs span{color:var(--text-secondary);font-size:.9rem}.error{font-size:.85rem}.time-separator{color:var(--text-secondary);text-align:center}.lead-info{background:var(--background-secondary);border-radius:var(--radius-md);margin-bottom:1.25rem;padding:1rem}.trail-status{font-size:.9em;margin-top:.5rem}.trail-status span{border-radius:var(--radius-md);margin-left:.5rem;padding:.25rem .5rem}.trail-status .active{background:#e6ffed;color:#237804}.trail-status .inactive{background:#fff1f0;color:#a8071a}.error-message{color:var(--danger-color);font-size:.85rem;margin-top:.25rem}.modal-actions{gap:.75rem;margin-top:1.5rem}.btn{font-weight:500;padding:.75rem 1.25rem}.btn.primary{background:var(--primary-color)}.btn.primary:hover{background:#2563eb}.btn.secondary{background:var(--background-secondary);border:1px solid var(--border-color);color:var(--text-main)}.btn.secondary:hover{background:#f8fafc}@media (max-width:480px){.modal-content{padding:1.25rem}.time-range-group{grid-template-columns:1fr}.time-separator{display:none}}.customers-list ul{padding-left:1rem}.group-selection{border-top:1px solid var(--border-color)}.group-stats{color:var(--text-secondary)}.group-item,.group-stats span{background:var(--background-secondary);border-radius:var(--radius-md)}.group-item{border:1px solid var(--border-color)}.group-item-header label{color:var(--text-primary)}.group-summary{border-radius:var(--radius-md);color:var(--primary-color)}.btn.danger{background:var(--danger-color)}.btn.danger:hover{background:#dc2626}.room-details{font-size:.85rem;margin-top:.5rem}.modal-overlay{background-color:#00000080}.modal-content{background:#fff;border-radius:8px;box-shadow:0 4px 20px #00000026;max-height:80vh;max-width:600px;padding:24px}.modal-title{color:#333;font-size:20px;font-weight:600;margin:0 0 20px}.approval-notice{align-items:center;background-color:#fff3cd;border:1px solid #ffeaa7;border-radius:6px;display:flex;gap:8px;margin-bottom:20px;padding:12px 16px}.approval-notice .icon-warning{color:#856404;font-size:16px}.approval-notice span{color:#856404;font-size:14px}.original-info{background-color:#f8f9fa;border-radius:6px;margin-bottom:20px;padding:16px}.original-info p{color:#333;font-size:14px;margin:8px 0}.form-group{margin:12px 0}.form-group label{color:#333;margin-bottom:6px}.form-group input{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:8px 12px;width:100%}.group-selection{border-top:1px solid #ddd;margin:1.5rem 0;padding-top:1rem}.group-header{margin-bottom:1rem}.group-header h4{color:#333}.group-stats{color:#666;display:flex;font-size:.9rem;gap:1rem}.group-stats span{background:#f8f9fa;border-radius:4px;font-weight:500;padding:.25rem .5rem}.group-item{background:#f8f9fa;border:1px solid #e9ecef;margin-bottom:1rem}.group-item-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.75rem}.group-item-header label{color:#333;font-weight:600;margin:0}.group-summary{background:#2c83f61a;border-radius:4px;color:#2c83f6;font-size:.85rem;font-weight:500;margin-top:.5rem;padding:.5rem}.customers-list{background:#f5f5f5;border-radius:4px;margin-top:0;padding:.25rem .5rem}.customers-list h5{color:#333;font-size:.9rem;line-height:1.2;margin:0 0 .25rem}.customers-list ul{list-style:none;margin:0;padding-left:0}.customers-list li{font-size:.85rem;margin-bottom:.25rem}.btn.small{font-size:.8rem;padding:.375rem .75rem}.btn.danger{background:#dc3545;border:none;color:#fff}.btn.danger:hover{background:#c82333}@media (max-width:480px){.group-header{align-items:flex-start;flex-direction:column;gap:.5rem}.group-stats{gap:.5rem}.group-item-header{align-items:flex-start;flex-direction:column;gap:.5rem}}.form-section{margin:20px 0}.time-range-group{margin-bottom:20px}.time-range-group label{color:#333;display:block;font-weight:500;margin-bottom:8px}.time-inputs{align-items:center;display:flex;gap:12px}.time-inputs input{border:1px solid #ddd;border-radius:4px;flex:1 1;font-size:14px;padding:8px 12px}.time-inputs span{color:#666;font-weight:500}.room-assignment-notice{background-color:#e7f3ff;border:1px solid #b3d9ff;border-radius:6px;margin:20px 0;padding:16px}.notice-text{align-items:center;color:#06c;display:flex;font-size:14px;gap:8px;margin:0}.notice-text .icon-info{color:#06c;font-size:16px}.modal-actions{gap:10px;justify-content:space-between;margin-top:20px}.btn{border-radius:4px;font-size:14px;transition:background-color .2s}.btn.primary{background-color:#007bff;color:#fff}.btn.primary:hover:not(:disabled){background-color:#0056b3}.btn.secondary{background-color:#6c757d;color:#fff}.btn.secondary:hover:not(:disabled){background-color:#545b62}.btn:disabled{opacity:.6}.error{color:#dc3545;font-size:12px;margin-top:4px}.form-error{background-color:#f8d7da;border:1px solid #f5c6cb;border-radius:4px;color:#721c24;font-size:14px;margin-top:16px;padding:12px}.customer-item{border:1px solid #e1e5e9;border-radius:6px;box-shadow:0 1px 3px #0000000d;list-style:none;margin-bottom:10px;padding:12px;transition:all .2s ease}.customer-item:hover{border-color:#c3d4e6;box-shadow:0 2px 6px #00000014}.customer-display{align-items:center;display:flex;gap:12px;justify-content:space-between}.customer-info{color:#2c3e50;flex:1 1;font-size:14px;font-weight:500;line-height:1.4}.btn-edit{background:linear-gradient(135deg,#3498db,#2980b9);border:none;border-radius:5px;box-shadow:0 2px 4px #3498db33;color:#fff;cursor:pointer;font-size:12px;font-weight:500;padding:6px 12px;transition:all .2s ease}.btn-edit:hover:not(:disabled){background:linear-gradient(135deg,#2980b9,#1f5f8b);box-shadow:0 4px 8px #3498db4d;transform:translateY(-1px)}.btn-edit:disabled{cursor:not-allowed;opacity:.6;transform:none}.customer-edit-form{display:flex;flex-direction:column;gap:12px;padding:4px 0}.edit-inputs{grid-gap:10px;display:grid;gap:10px;grid-template-columns:1fr 1fr}.edit-inputs input{background-color:#fafbfc;border:2px solid #e1e5e9;border-radius:6px;font-size:14px;padding:10px 12px;transition:all .2s ease}.edit-inputs input:focus{background-color:#fff;border-color:#3498db;box-shadow:0 0 0 3px #3498db1a;outline:none}.edit-inputs input:nth-child(3){grid-column:1/-1}.edit-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:4px}.btn-save{background:linear-gradient(135deg,#27ae60,#229954);border:none;border-radius:5px;box-shadow:0 2px 4px #27ae6033;color:#fff;cursor:pointer;font-size:13px;font-weight:500;padding:8px 16px;transition:all .2s ease}.btn-save:hover{background:linear-gradient(135deg,#229954,#1e7e34);box-shadow:0 4px 8px #27ae604d;transform:translateY(-1px)}.btn-cancel{background:linear-gradient(135deg,#95a5a6,#7f8c8d);border:none;border-radius:5px;box-shadow:0 2px 4px #95a5a633;color:#fff;cursor:pointer;font-size:13px;font-weight:500;padding:8px 16px;transition:all .2s ease}.btn-cancel:hover{background:linear-gradient(135deg,#7f8c8d,#6c7b7d);box-shadow:0 4px 8px #95a5a64d;transform:translateY(-1px)}@media (max-width:480px){.edit-inputs{grid-template-columns:1fr}.edit-inputs input:nth-child(3){grid-column:1}.edit-actions{flex-direction:column;gap:6px}.btn-cancel,.btn-save{justify-content:center;width:100%}}.customer-room-assignment-modal-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.customer-room-assignment-modal{background:#fff;border-radius:8px;box-shadow:0 4px 20px #00000026;display:flex;flex-direction:column;max-height:90vh;max-width:800px;overflow:hidden;width:90%}.modal-header{background-color:#f8f9fa;border-bottom:1px solid #e0e0e0}.modal-header h3{color:#333;font-size:1.5rem;margin:0}.close-button{border-radius:4px;padding:5px;transition:background-color .2s}.close-button:hover{background-color:#e9ecef;color:#333}.modal-content{flex:1 1;overflow-y:auto;padding:20px}.modal-footer{background-color:#f8f9fa;border-top:1px solid #e0e0e0;padding:15px 20px}.loading-container{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:40px;text-align:center}.loading-spinner{animation:var(--animation-spin);border-top:4px solid var(--border-color);border:4px solid var(--border-color);border-radius:50%;border-top-color:var(--primary-color);height:40px;margin-bottom:15px;width:40px}.error-container{padding:40px;text-align:center}.error-message{font-size:1.1rem;margin-bottom:15px}.retry-button{background-color:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:1rem;padding:10px 20px;transition:background-color .2s}.retry-button:hover{background-color:#0056b3}.reservation-basic-info{background-color:#f8f9fa;border-left:4px solid #007bff;border-radius:8px;margin-bottom:25px;padding:20px}.reservation-basic-info h4{color:#333;font-size:1.2rem;margin:0 0 15px}.info-grid{grid-gap:15px;gap:15px}.info-item label{color:#555;font-weight:600;margin-right:8px}.info-item span{color:#333}.status-badge{border-radius:4px;font-size:.85rem;font-weight:500;padding:4px 8px}.status-badge.status-pending{background-color:#fff3cd;border:1px solid #ffeaa7;color:#856404}.status-badge.status-approved{background-color:#d4edda;border:1px solid #c3e6cb;color:#155724}.status-badge.status-rejected{background-color:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.status-badge.status-cancelled{background-color:#e2e3e5;border:1px solid #d6d8db;color:#383d41}.status-badge.status-completed{background-color:#d1ecf1;border:1px solid #bee5eb;color:#0c5460}.group-statistics{background-color:#fff;border:1px solid #e0e0e0;border-radius:8px;margin-bottom:25px;padding:20px}.group-statistics h4{color:#333;font-size:1.2rem;margin:0 0 15px}.stats-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));margin-bottom:15px}.stat-item{background-color:#f8f9fa;border:1px solid #e9ecef;border-radius:6px;padding:15px}.stat-number{color:#007bff;display:block;font-size:2rem;font-weight:700;margin-bottom:5px}.stat-label{color:#666;display:block;font-size:.9rem;font-weight:500}.assignment-status{display:flex;flex-direction:column;gap:8px}.assignment-badge{align-items:center;border-radius:6px;display:inline-flex;font-size:.9rem;font-weight:500;gap:5px;padding:8px 12px}.assignment-badge.complete{background-color:#d4edda;border:1px solid #c3e6cb;color:#155724}.assignment-badge.incomplete{background-color:#fff3cd;border:1px solid #ffeaa7;color:#856404}.last-assigned-time{color:#666;font-size:.85rem;font-style:italic}.group-details{background-color:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:20px}.group-details h4{color:#333;font-size:1.2rem;margin:0 0 20px}.groups-list{display:flex;flex-direction:column;gap:20px}.group-card{background-color:#fafafa;border:1px solid #e0e0e0;border-radius:8px;padding:20px;transition:box-shadow .2s}.group-card:hover{box-shadow:0 2px 8px #0000001a}.group-header{border-bottom:1px solid #e0e0e0;margin-bottom:15px;padding-bottom:10px}.group-header h5{color:#333;font-size:1.1rem;margin:0}.group-status-badge{border-radius:4px;font-size:.8rem;font-weight:500;padding:4px 8px}.group-status-badge.status-created{background-color:#e2e3e5;color:#383d41}.group-status-badge.status-room_assigned{background-color:#d1ecf1;color:#0c5460}.group-status-badge.status-checked_in{background-color:#d4edda;color:#155724}.group-status-badge.status-checked_out{background-color:#f8d7da;color:#721c24}.room-assignment{background-color:#fff;border:1px solid #e9ecef;border-radius:6px;margin-bottom:15px;padding:15px}.assigned-room,.unassigned-room{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.room-icon{font-size:1.2rem}.room-info{color:#333;font-weight:500}.assigned-time{color:#666;font-size:.85rem;font-style:italic;margin-left:auto}.unassigned-room .room-info{color:#dc3545}.customers-list{margin-bottom:15px}.customers-list h6{color:#555;font-size:1rem;margin:0 0 10px}.customers-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.customer-item{border:1px solid #e9ecef;border-radius:4px;flex-direction:column;padding:10px;transition:background-color .2s}.customer-item:hover{background-color:#f8f9fa}.customer-name{color:#333;font-weight:500;margin-bottom:4px}.customer-phone{color:#666;font-size:.9rem}.no-customers{background-color:#f8f9fa;border-radius:4px;color:#666;margin:0;padding:10px;text-align:center}.group-notes{background-color:#fff;border:1px solid #e9ecef;border-radius:6px;padding:15px}.group-notes h6{color:#555;font-size:1rem;margin:0 0 8px}.group-notes p{color:#333;line-height:1.5;margin:0}.no-groups{color:#666}@media (max-width:768px){.customer-room-assignment-modal{max-height:95vh;width:95%}.info-grid{grid-template-columns:1fr}.stats-grid{grid-template-columns:repeat(2,1fr)}.customers-grid{grid-template-columns:1fr}.assigned-room,.unassigned-room{align-items:flex-start;flex-direction:column}.assigned-time{margin-left:0}}.reservation-container{background:var(--background-secondary);min-height:100vh;padding:var(--spacing-lg)}.reservation-table{background:var(--background-primary);border-collapse:collapse;box-sizing:border-box;font-size:.9rem;max-width:100%;min-width:100%;table-layout:auto;width:100%}.reservation-table td,.reservation-table th{border-bottom:1px solid var(--border-color);padding:.75rem .5rem;text-align:center;text-overflow:ellipsis;vertical-align:middle;white-space:nowrap}.reservation-table .notes-cell{word-wrap:break-word;line-height:1.4;max-width:200px;min-width:120px;padding:.75rem .5rem;text-align:center;white-space:normal;word-break:break-all}.reservation-table th{background:linear-gradient(135deg,var(--background-secondary) 0,#f1f5f9 100%);border-bottom:2px solid var(--primary-color);color:var(--text-primary);font-size:.8rem;font-weight:var(--font-weight-bold);letter-spacing:.5px;position:-webkit-sticky;position:sticky;text-transform:uppercase;top:0;z-index:var(--z-sticky)}.reservation-table tbody tr{border-left:3px solid #0000;transition:var(--transition-normal)}.reservation-table tbody tr:hover{background:var(--background-hover);border-left-color:var(--primary-color);box-shadow:var(--shadow-sm);transform:translateX(2px)}.reservation-table tbody tr:nth-child(2n){background:var(--background-secondary)}.reservation-table tbody tr:nth-child(2n):hover{background:var(--background-hover)}.main-row{cursor:pointer;font-weight:var(--font-weight-medium)}.main-row:hover{background:var(--background-hover)!important}.sub-row{background:var(--background-tertiary)!important;color:var(--text-secondary);font-size:.85rem}.sub-row:hover{background:var(--background-hover)!important}.expand-icon{align-items:center;border-radius:var(--radius-sm);color:var(--primary-color);cursor:pointer;display:inline-flex;font-weight:var(--font-weight-bold);height:24px;justify-content:center;transition:var(--transition-fast);-webkit-user-select:none;user-select:none;width:24px}.expand-icon:hover{background:var(--primary-100);transform:scale(1.1)}.badge{align-items:center;border-radius:var(--radius-full);box-shadow:var(--shadow-sm);color:var(--text-inverse);display:inline-flex;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);justify-content:center;letter-spacing:.05em;line-height:1;min-width:60px;overflow:hidden;padding:.25rem .75rem;position:relative;text-transform:uppercase;transition:var(--transition-normal)}.badge:before{background:linear-gradient(90deg,#0000,#ffffff4d,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .6s;width:100%}.badge:hover:before{left:100%}.badge:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.badge.experience{background:var(--gradient-primary)}.badge.visit{background:var(--gradient-info)}.status.已完成,.status.已预约{background:var(--gradient-success)}.status.已取消,.status.驳回{background:var(--gradient-danger)}.status.改期中{background:var(--gradient-warning)}.status.未确定{background:var(--gradient-info)}.status.未预约{background:linear-gradient(135deg,var(--gray-500) 0,var(--gray-600) 100%)}.status.已到访{background:var(--gradient-success)}.status.已试住{background:var(--gradient-primary)}.room-details{background:var(--background-secondary);border-left:3px solid var(--primary-color);border-radius:var(--radius-sm);color:var(--text-secondary);margin-top:var(--spacing-sm);padding:var(--spacing-sm)}.action-btn,.room-details{font-size:var(--font-size-xs)}.action-btn{align-items:center;display:inline-flex;font-weight:var(--font-weight-medium);justify-content:center;letter-spacing:.025em;min-width:60px;overflow:hidden;position:relative;text-decoration:none;transition:var(--transition-smooth)}.action-btn:before{background:linear-gradient(90deg,#0000,#ffffff4d,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:var(--transition-fast);width:100%}.action-btn:hover:before{left:100%}.action-btn:focus{outline:none;transform:scale(1.05)}.action-btn:active{transform:scale(.98)}.action-btn.primary{background:var(--gradient-primary);box-shadow:var(--shadow-sm);color:var(--text-inverse)}.action-btn.primary:hover{box-shadow:var(--shadow-md),var(--shadow-glow);transform:translateY(-2px) scale(1.05)}.action-btn.secondary{background:var(--gradient-info);box-shadow:var(--shadow-sm);color:var(--text-inverse)}.action-btn.secondary:hover{box-shadow:var(--shadow-md),var(--shadow-glow);transform:translateY(-2px) scale(1.05)}.action-btn.info{background:var(--gradient-warning);box-shadow:var(--shadow-sm);color:var(--text-inverse)}.action-btn.info:hover{box-shadow:var(--shadow-md),var(--shadow-glow-warning);transform:translateY(-2px) scale(1.05)}.action-btn.warning{background:var(--gradient-warning);box-shadow:var(--shadow-sm);color:var(--text-inverse)}.action-btn.warning:hover{box-shadow:var(--shadow-md),var(--shadow-glow-warning);transform:translateY(-2px) scale(1.05)}.action-btn.danger{background:var(--gradient-danger);box-shadow:var(--shadow-sm);color:var(--text-inverse)}.action-btn.danger:hover{box-shadow:var(--shadow-md),var(--shadow-glow-danger);transform:translateY(-2px) scale(1.05)}@media (max-width:768px){.reservation-container{padding:var(--spacing-md)}.filter-controls{align-items:stretch;flex-direction:column}.date-filter,.id-filter,.search-filter,.status-filter{min-width:auto;width:100%}.action-group{flex-wrap:wrap;gap:var(--spacing-xs)}.action-btn{font-size:var(--font-size-xs);min-width:50px;padding:.375rem .75rem}.reservation-table{font-size:.8rem}.reservation-table td,.reservation-table th{padding:.5rem .25rem}.reservation-table .notes-cell{font-size:.75rem;max-width:150px;min-width:100px}}@media (max-width:480px){.reservation-container{padding:var(--spacing-sm)}.list-header{align-items:stretch;flex-direction:column;gap:var(--spacing-md)}.list-header h1{font-size:var(--font-size-xl);text-align:center}.reservation-table{font-size:.75rem}.badge,.status{font-size:.6rem;min-width:50px;padding:.25rem .5rem}.reservation-table .notes-cell{font-size:.7rem;max-width:120px;min-width:80px;padding:.5rem .25rem}}.rejection-modal{max-height:80vh;max-width:600px;overflow-y:auto;width:90%}.rejection-opinions{display:flex;flex-direction:column;gap:var(--spacing-lg)}.opinion-item{background:var(--background-secondary);border:1px solid var(--border-light);border-radius:var(--radius-md);padding:var(--spacing-md);transition:all .2s ease}.opinion-item:hover{border-color:var(--border-primary);box-shadow:var(--shadow-sm)}.opinion-header{align-items:center;border-bottom:1px solid var(--border-light);display:flex;justify-content:space-between;margin-bottom:var(--spacing-sm);padding-bottom:var(--spacing-sm)}.opinion-header .department{background:var(--danger-color);border-radius:var(--radius-sm);color:#fff;font-size:var(--font-size-sm);font-weight:600;padding:.25rem .75rem}.opinion-header .time{color:var(--text-secondary);font-size:var(--font-size-sm)}.opinion-content{line-height:1.5;margin-bottom:var(--spacing-sm)}.opinion-content:last-child{margin-bottom:0}.rejection-reason{background:var(--background-primary);border:1px solid var(--border-light);border-radius:var(--radius-sm);color:var(--text-primary);font-family:inherit;margin-top:var(--spacing-xs);padding:var(--spacing-sm);white-space:pre-wrap;word-break:break-word}.no-opinions{color:var(--text-secondary);font-style:italic;padding:var(--spacing-xl);text-align:center}@media (max-width:768px){.rejection-modal{max-height:90vh;width:95%}.opinion-header{align-items:flex-start;flex-direction:column;gap:var(--spacing-xs)}.opinion-header .department{align-self:flex-start}}.group-assignment-modal{background:#fff;border-radius:8px;box-shadow:0 4px 20px #00000026;max-height:90vh;max-width:800px;overflow-y:auto;width:90%}.group-assignment-modal .modal-header{align-items:center;border-bottom:1px solid #eee;display:flex;justify-content:space-between;padding:20px}.group-assignment-modal .modal-header h2{color:#333;font-size:18px;margin:0}.group-assignment-modal .close-btn{align-items:center;background:none;border:none;color:#999;cursor:pointer;display:flex;font-size:24px;height:30px;justify-content:center;padding:0;width:30px}.group-assignment-modal .close-btn:hover{color:#666}.group-assignment-modal .modal-body{padding:20px}.approval-info{background:#f8f9fa;border-radius:6px;padding:15px}.approval-info h3{color:#333;font-size:16px;margin:0 0 10px}.approval-info p{color:#666;margin:5px 0}.groups-assignment h3{color:#333;font-size:16px;margin:0 0 15px}.group-assignment-item{background:#fafafa;border:1px solid #e0e0e0;margin-bottom:15px}.group-info{margin-bottom:15px}.group-info h4{color:#333;font-size:14px;margin:0 0 8px}.group-info p{color:#666;font-size:13px;margin:0}.room-selection{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.room-selection label{color:#333;font-weight:500;min-width:80px}.room-selection select{border:1px solid #ddd;border-radius:4px;flex:1 1;font-size:14px;min-width:200px;padding:8px 12px}.room-selection select.error{border-color:#dc3545}.room-selection select:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40;outline:none}.error-message{color:#dc3545;font-size:12px;margin-top:4px}.no-groups{color:#999;font-style:italic;padding:40px;text-align:center}.approval-opinion-section{background:#f8f9fa;border:1px solid #e9ecef;border-radius:6px;margin-top:20px;padding:15px}.approval-opinion-section h3{color:#333;font-size:16px;font-weight:600;margin:0 0 10px}.approval-opinion-textarea{border:1px solid #ddd;border-radius:4px;box-sizing:border-box;font-family:inherit;font-size:14px;min-height:80px;padding:10px;resize:vertical;width:100%}.approval-opinion-textarea:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40;outline:none}.approval-opinion-textarea::placeholder{color:#999}.char-count{color:#666;font-size:12px;margin-top:5px;text-align:right}.group-assignment-modal .modal-footer{background:#f8f9fa;border-top:1px solid #eee;display:flex;gap:10px;justify-content:flex-end;padding:20px}.group-assignment-modal .cancel-btn,.group-assignment-modal .confirm-btn{border:none;border-radius:4px;cursor:pointer;font-size:14px;padding:8px 20px;transition:background-color .2s}.group-assignment-modal .cancel-btn{background:#6c757d;color:#fff}.group-assignment-modal .cancel-btn:hover{background:#5a6268}.group-assignment-modal .confirm-btn{background:#007bff;color:#fff}.group-assignment-modal .confirm-btn:hover:not(:disabled){background:#0056b3}.group-assignment-modal .confirm-btn:disabled{background:#ccc;cursor:not-allowed}.customer-details{background-color:#f8f9fa;border:1px solid #e9ecef;border-radius:4px;margin-top:10px;padding:10px}.customer-details h5{color:#495057;font-size:14px;font-weight:600;margin:0 0 8px}.customer-item{background-color:#fff;border:1px solid #dee2e6;border-radius:3px;display:flex;flex-wrap:wrap;gap:8px;margin-bottom:6px;padding:6px}.customer-name{color:#007bff;min-width:80px}.customer-phone{min-width:100px}.customer-age,.customer-id{font-size:12px}.no-customers{color:#6c757d;font-style:italic}.group-assignment-item{background-color:#fff;border:1px solid #dee2e6;border-radius:6px;margin-bottom:20px;padding:15px}.group-info h4{color:#495057;margin:0 0 10px}.approval-container{background:linear-gradient(135deg,#f8fafc,#e2e8f0);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;min-height:100vh;padding:32px}.list-header h1{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#2c83f6,#1a5ebf);background:var(--gradient-primary);-webkit-background-clip:text;background-clip:text;color:#2d3748;color:var(--text-primary);font-size:28px;font-weight:700;margin:0}.id-filter,.search-filter,.status-filter{background:#fff;border:1px solid #e2e8f0;border:1px solid var(--border-color);border-radius:8px;border-radius:var(--radius-md);min-width:150px;padding:.625rem 2.5rem .625rem 1rem;transition:border-color .2s,box-shadow .2s}.date-filter{border:1px solid #e2e8f0;border-radius:8px;padding:.5rem}.table-wrapper{scrollbar-color:#2c83f6 #f1f1f1;scrollbar-color:var(--primary-color) #f1f1f1;scrollbar-width:thin;width:100%}.table-wrapper::-webkit-scrollbar{height:8px}.table-wrapper::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.table-wrapper::-webkit-scrollbar-thumb{background:#2c83f6;background:var(--primary-color);border-radius:4px}.table-wrapper::-webkit-scrollbar-thumb:hover{background:#1a5ebf}.approval-table{background:#fff;background:var(--bg-surface);border-collapse:collapse;font-size:14px;min-width:1400px;table-layout:fixed;width:100%}.approval-table td,.approval-table th{border-bottom:1px solid #f1f5f9;border-bottom:1px solid var(--border-light);overflow:hidden;padding:12px 16px;text-align:left;text-overflow:ellipsis;vertical-align:middle;white-space:nowrap}.approval-table td:first-child,.approval-table th:first-child{width:120px}.approval-table td:nth-child(2),.approval-table th:nth-child(2){width:100px}.approval-table td:nth-child(3),.approval-table th:nth-child(3){width:200px}.approval-table td:nth-child(4),.approval-table td:nth-child(5),.approval-table td:nth-child(6),.approval-table td:nth-child(7),.approval-table th:nth-child(4),.approval-table th:nth-child(5),.approval-table th:nth-child(6),.approval-table th:nth-child(7){width:100px}.approval-table td:nth-child(8),.approval-table th:nth-child(8){min-width:250px;width:250px}.approval-table th{background:linear-gradient(135deg,#f8fafc,#f1f5f9);background:linear-gradient(135deg,var(--bg-subtle) 0,#f1f5f9 100%);border-bottom:2px solid #2c83f6;border-bottom:2px solid var(--primary-color);color:#2d3748;color:var(--text-primary);font-size:13px;font-weight:700;letter-spacing:.5px;position:-webkit-sticky;position:sticky;text-transform:uppercase;top:0;z-index:10}.approval-table tbody tr{border-left:3px solid #0000;transition:all .2s ease;transition:var(--transition)}.approval-table tbody tr:hover{background:#f1f5f9;background:var(--table-hover-bg);border-left-color:#2c83f6;border-left-color:var(--primary-color);box-shadow:0 1px 2px 0 #0000000d;box-shadow:var(--shadow-sm);transform:translateX(2px)}.approval-table tbody tr:nth-child(2n){background:#f8fafc80}.approval-table tbody tr:nth-child(2n):hover{background:#f1f5f9;background:var(--table-hover-bg)}.customer-link{border-radius:4px;border-radius:var(--radius-sm);display:inline-block;font-weight:600;padding:4px 8px;text-decoration:none;transition:all .2s ease;transition:var(--transition)}.customer-link,.customer-link:hover{color:#2c83f6;color:var(--primary-color)}.customer-link:hover{background:#e3f2fd;background:var(--primary-light);box-shadow:0 1px 2px 0 #0000000d;box-shadow:var(--shadow-sm);transform:translateY(-1px)}.approval-table tr:hover{background-color:#f1f5f9;background-color:var(--table-hover-bg)}.approval-table tr:not(:last-child) td{border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--border-color)}.reschedule-tooltip-trigger{color:#2c83f6;color:var(--primary-color);cursor:help;display:inline-block;position:static;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.reschedule-tooltip{background:#fff;background:var(--bg-surface);border:1px solid #e2e8f0;border:1px solid var(--border-color);border-radius:8px;border-radius:var(--radius-md);box-shadow:0 4px 12px #00000026;max-width:300px;opacity:0;padding:12px;pointer-events:none;position:fixed;transform:translateX(-50%);transition:opacity .2s;z-index:9999}.reschedule-tooltip-trigger:hover .reschedule-tooltip{opacity:1}.reschedule-tooltip:after{border:6px solid #0000;border-top-color:#e2e8f0;border-color:var(--border-color) #0000 #0000 #0000;content:"";left:50%;position:absolute;top:100%;transform:translateX(-50%)}.tooltip-row{align-items:baseline;display:flex;margin:6px 0}.tooltip-row>span:first-child{color:#718096;color:var(--text-secondary);flex:0 0 60px;font-weight:500;margin-right:8px}.tooltip-footer{border-top:1px dashed #e2e8f0;border-top:1px dashed var(--border-color);font-size:.85rem;margin-top:8px;padding-top:8px}.tooltip-footer,.tooltip-loading{color:#718096;color:var(--text-secondary)}.tooltip-loading{animation:pulse 1.5s infinite;padding:8px;text-align:center}.reschedule-badge{background:#e3f2fd;border-radius:12px;color:#1976d2;display:inline-block;font-size:.8rem;padding:.25rem .5rem}.room-selector{border:1px solid #e2e8f0;border:1px solid var(--border-color);border-radius:8px;border-radius:var(--radius-md);margin-right:.5rem;min-width:180px;padding:.5rem}.status.approved{background:linear-gradient(135deg,#4caf50,#388e3c);background:var(--gradient-success);box-shadow:0 2px 8px #4caf504d;color:#fff}.status.rejected{background:linear-gradient(135deg,#f44336,#d32f2f);background:var(--gradient-danger);box-shadow:0 2px 8px #f443364d;color:#fff}.status.confirmed{background:linear-gradient(135deg,#2c83f6,#1a5ebf);background:var(--gradient-primary);box-shadow:0 2px 8px #2c83f64d}.approval-table tr{transition:background-color .2s}.approval-table tr:hover{background-color:#2c83f60d}.status.rejected,.status.timeout{background:#ffebee;color:#c62828}.btn{align-items:center;border:none;border-radius:8px;border-radius:var(--radius-md);cursor:pointer;display:inline-flex;font-size:13px;font-weight:600;gap:8px;justify-content:center;letter-spacing:.5px;margin:0 6px;min-width:100px;overflow:hidden;padding:10px 20px;position:relative;text-decoration:none;text-transform:uppercase;transition:all .2s ease;transition:var(--transition)}.btn:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s ease;width:100%}.btn:hover:before{left:100%}.btn:disabled{cursor:not-allowed;opacity:.5;transform:none}.btn:disabled:before{display:none}.btn-approve{background:linear-gradient(135deg,#4caf50,#388e3c);background:var(--gradient-success);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;box-shadow:var(--shadow-md);color:#fff}.btn-approve:hover:not(:disabled){background:linear-gradient(135deg,#388e3c,#2e7d32);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;box-shadow:var(--shadow-lg);transform:translateY(-2px) scale(1.02)}.btn-reject{background:linear-gradient(135deg,#f44336,#d32f2f);background:var(--gradient-danger);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;box-shadow:var(--shadow-md);color:#fff}.btn-reject:hover:not(:disabled){background:linear-gradient(135deg,#d32f2f,#c62828);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;box-shadow:var(--shadow-lg);transform:translateY(-2px) scale(1.02)}.btn-reschedule{background:linear-gradient(135deg,#2c83f6,#1a5ebf);background:var(--gradient-primary);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;box-shadow:var(--shadow-md);color:#fff}.btn-reschedule:hover:not(:disabled){background:linear-gradient(135deg,#1a5ebf,#1565c0);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;box-shadow:var(--shadow-lg);transform:translateY(-2px) scale(1.02)}.btn-revoke{background:linear-gradient(135deg,#757575,#616161);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;box-shadow:var(--shadow-md);color:#fff}.btn-revoke:hover:not(:disabled){background:linear-gradient(135deg,#616161,#424242);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;box-shadow:var(--shadow-lg);transform:translateY(-2px) scale(1.02)}.action-buttons{flex-wrap:wrap;gap:8px}.action-group{gap:.5rem}.action-btn{border:none;border-radius:8px;border-radius:var(--radius-md);box-shadow:0 1px 2px #0000000d;cursor:pointer;font-size:.8rem;font-weight:500;padding:.5rem 1rem;transition:all .2s ease;transition:var(--transition)}.action-btn.approve{background-image:linear-gradient(135deg,#4caf50,#388e3c);background-image:var(--gradient-success);color:#fff}.action-btn.approve:hover{background-image:linear-gradient(135deg,#6dd5ed,#2193b0)}.action-btn.reject{background-image:linear-gradient(135deg,#f44336,#d32f2f);background-image:var(--gradient-danger);color:#fff}.action-btn.reject:hover{background-image:linear-gradient(135deg,#ff7e5f,#fe4c4c)}.action-btn.reschedule{background-image:linear-gradient(135deg,#ff9800,#f57c00);background-image:var(--gradient-warning);color:#fff}.action-btn.reschedule:hover{background-image:linear-gradient(135deg,#fddb92,#d1fdff)}.action-btn.withdraw{background-image:linear-gradient(135deg,#17a2b8,#138496);background-image:var(--gradient-info);color:#fff}.action-btn.withdraw:hover{background-image:linear-gradient(135deg,#a1c4fd,#c2e9fb)}@media (max-width:768px){.approval-container{margin:1rem;padding:1rem}.filter-controls{flex-direction:column}.date-filter,.id-filter,.search-filter,.status-filter{width:100%}.table-wrapper{border-radius:8px;margin:1rem 0}.approval-table{font-size:12px;min-width:900px}.approval-table td,.approval-table th{font-size:12px;padding:8px 12px}.approval-table td:first-child,.approval-table th:first-child{width:100px}.approval-table td:nth-child(2),.approval-table th:nth-child(2){width:80px}.approval-table td:nth-child(3),.approval-table th:nth-child(3){width:120px}.approval-table td:nth-child(4),.approval-table td:nth-child(5),.approval-table td:nth-child(6),.approval-table td:nth-child(7),.approval-table th:nth-child(4),.approval-table th:nth-child(5),.approval-table th:nth-child(6),.approval-table th:nth-child(7){width:80px}.approval-table td:nth-child(8),.approval-table th:nth-child(8){min-width:180px;width:180px}.reschedule-tooltip{left:50%!important;position:fixed;top:50%!important;transform:translate(-50%,-50%);width:80vw}.reschedule-tooltip:before{display:none}}@keyframes pulse{0%{opacity:.6}50%{opacity:1}to{opacity:.6}}.modal-overlay{animation:fadeIn .3s ease-out forwards;background-color:#0009;opacity:0}.customer-modal{animation:slideUp .3s ease-out forwards;background:#fff;background:var(--bg-surface);border-radius:8px;border-radius:var(--radius-md);box-shadow:0 10px 25px #0003;display:flex;flex-direction:column;max-height:calc(100vh - 4rem);max-width:calc(100vw - 2rem);overflow-y:auto;transform:translateY(20px);width:850px}@keyframes slideUp{to{transform:translateY(0)}}.modal-header{background:#fff;background:var(--bg-surface);border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--border-color);padding:1.25rem 1.5rem;position:-webkit-sticky;position:sticky;top:0;z-index:10}.modal-header h2{color:#2d3748;color:var(--text-primary);font-size:1.5rem;font-weight:600;margin:0}.reject-modal{background:#fff;border-radius:8px;max-width:90%;padding:20px;width:500px}.reject-reason-input{border:1px solid #e2e8f0;border:1px solid var(--border-color);border-radius:4px;height:120px;margin-bottom:20px;padding:10px;resize:none;width:98%}.modal-footer{display:flex;gap:10px;justify-content:flex-end}.cancel-btn,.confirm-btn{border-radius:4px;cursor:pointer;padding:8px 16px}.cancel-btn{background:#f0f0f0}.confirm-btn{background:#ff4d4f}.close-btn{background:none;border:none;color:#718096;color:var(--text-secondary);cursor:pointer;font-size:1.75rem;line-height:1;padding:.25rem;transition:color .2s}.close-btn:hover{color:#2c83f6;color:var(--primary-color)}.modal-body{padding:1.5rem}.section{margin-bottom:2rem;position:relative}.section:last-child{margin-bottom:0}.section h3{border-bottom:1px dashed #e2e8f0;border-bottom:1px dashed var(--border-color);color:#2c83f6;color:var(--primary-color);font-size:1.1rem;font-weight:600;margin-bottom:1rem;margin-top:0;padding-bottom:.5rem}.section p{color:#2d3748;color:var(--text-primary);line-height:1.6;margin:.75rem 0}.section p span{color:#718096;color:var(--text-secondary);margin-right:.5rem}.customer-info{box-shadow:0 1px 3px #0000000d;margin-bottom:.75rem;padding:1rem}@media (max-width:768px){.customer-modal{max-height:calc(100vh - 1rem);width:calc(100vw - 1rem)}.modal-body,.modal-header{padding:1rem}.section{margin-bottom:1.5rem}}.no-data{color:#718096;color:var(--text-secondary);font-style:italic;padding:1rem;text-align:center}.customer-info{background:#f8fafc;background:var(--bg-subtle);border-radius:8px;border-radius:var(--radius-md);margin-bottom:.5rem;padding:.75rem}.action-btn.assign-room{background-image:linear-gradient(135deg,#2c83f6,#1a5ebf);background-image:var(--gradient-primary);color:#fff}.action-btn.assign-room:hover{background-image:linear-gradient(135deg,#40a9ff,#1890ff)}.action-btn.assign-room:disabled{background-color:#d9d9d9;cursor:not-allowed}.action-btn.view-details{background-image:linear-gradient(135deg,#2c83f6,#1a5ebf);background-image:var(--gradient-primary);color:#fff}.action-btn.view-details:hover{background-image:linear-gradient(135deg,#40a9ff,#1890ff)}.experience-modal{background:#fff;border-radius:8px;box-shadow:0 2px 10px #0000001a;display:flex;flex-direction:column;max-height:90vh;overflow:hidden;width:800px}.modal-body{flex:1 1;overflow-y:auto;padding:0 20px}.modal-header{align-items:center;border-bottom:1px solid #eee;display:flex;justify-content:space-between;padding:20px}.close-button{color:#666;font-size:24px}.details-grid,.grid-layout{grid-gap:30px;display:grid;gap:30px;grid-template-columns:1fr 1fr;padding:20px}.details-grid{border-top:1px solid #eee}.info-row{display:flex;line-height:1.6;margin-bottom:12px}.info-row label{align-items:center;color:#666;display:flex;font-weight:500;justify-content:left;text-align:center;width:120px}.section-title{border-bottom:2px solid #3498db;color:#2c3e50;margin-bottom:16px;padding-bottom:8px}.status-tag{border-radius:16px;display:inline-block;font-size:.9em;padding:4px 12px}.status-tag.scheduled{background:#f39c12;color:#fff}.status-tag.checked-in{background:#27ae60;color:#fff}.status-tag.checked-out{background:#95a5a6;color:#fff}.timeline-steps{padding-left:40px;position:relative}.timeline-item{padding-bottom:20px}.timeline-marker{background:#bdc3c7;border-radius:50%;height:12px;left:-20px;top:4px;width:12px}.timeline-marker.scheduled{background:#f39c12}.timeline-marker.checked-in{background:#27ae60}.timeline-marker.checked-out{background:#95a5a6}.rating-stars{display:inline-flex;font-size:24px}.star{color:#ddd;margin-right:2px}.star.filled{color:#f1c40f}.highlight{color:#e74c3c;font-weight:500}.follow-ups-section{background:#f8f9fa;border-radius:4px;margin-top:1rem;padding:1rem}.follow-up-item{margin-bottom:1rem;padding:.5rem}.follow-time{color:#95a5a6;display:block;font-size:.8em;margin-top:.5rem}.next-follow-time{border-top:1px dashed #ddd;color:#3498db;margin-top:.5rem;padding-top:.5rem}.group-info-section{background-color:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;margin:1.5rem 0;padding:1rem}.groups-container{display:flex;flex-direction:column;gap:1rem}.group-item{background-color:#fff;border:1px solid #dee2e6;border-radius:6px;box-shadow:0 1px 3px #0000001a;padding:1rem}.group-header{align-items:center;border-bottom:1px solid #e9ecef;display:flex;justify-content:space-between;margin-bottom:.75rem;padding-bottom:.5rem}.group-header h4{color:#495057;font-size:1.1rem;font-weight:600;margin:0}.customer-count{background-color:#e3f2fd;border-radius:4px;color:#1976d2;font-size:.85rem;font-weight:500;padding:.25rem .5rem}.group-customers h5{color:#6c757d;font-size:.9rem;font-weight:500;margin:0 0 .5rem}.customers-list{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.customer-card{background-color:#f8f9fa;border:1px solid #e9ecef;border-radius:4px;font-size:.85rem;padding:.75rem}.customer-name{color:#495057;font-weight:600;margin-bottom:.25rem}.customer-phone{color:#6c757d;margin-bottom:.25rem}.customer-age,.customer-id{color:#6c757d;font-size:.8rem;margin-bottom:.15rem}.customer-loading,.no-customers,.no-groups{color:#6c757d;font-style:italic}.no-customers,.no-groups{padding:1rem;text-align:center}@media (max-width:768px){.customers-list{grid-template-columns:1fr}.group-header{align-items:flex-start;flex-direction:column;gap:.5rem}.customer-card{padding:.5rem}}.room-info{gap:4px}.group-rooms{display:inline-block;position:relative}.group-label{background:#3498db;border-radius:10px;color:#fff;cursor:pointer;font-size:.75rem;padding:2px 6px;transition:background-color .2s}.group-label:hover{background:#2980b9}.group-rooms-tooltip{background:#34495e;border-radius:4px;box-shadow:0 4px 12px #00000040;color:#fff;left:auto;min-width:120px;opacity:0;padding:8px;pointer-events:none;position:fixed;top:auto;transform:translateY(-5px);transition:all .2s ease;visibility:hidden;z-index:9999}.group-rooms:hover .group-rooms-tooltip{opacity:1;transform:translateY(0);visibility:visible}.group-room{display:block;font-size:.8rem;padding:2px 0}.group-room:not(:last-child){border-bottom:1px solid #4a6741}.room-details{display:flex;flex-direction:column;gap:12px}.main-room{color:#2c3e50;font-size:1.1rem;font-weight:600;margin:0}.group-rooms-section{background:#f8f9fa;border-left:4px solid #3498db;border-radius:6px;padding:12px}.group-rooms-section h5{color:#34495e;font-size:.9rem;font-weight:600;margin:0 0 8px}.group-rooms-list{display:flex;flex-wrap:wrap;gap:6px}.group-room-tag{background:#3498db;border-radius:12px;color:#fff;font-size:.8rem;font-weight:500;padding:4px 8px}@media (max-width:768px){.room-info{gap:2px}.group-label{font-size:.7rem;padding:1px 4px}.group-rooms-tooltip{font-size:.75rem;min-width:100px}.group-rooms-section{padding:8px}.group-room-tag{font-size:.75rem;padding:3px 6px}}.room-status{border-radius:50%;display:inline-block;height:8px;margin-left:4px;width:8px}.room-status.available{background:#27ae60}.room-status.occupied{background:#e74c3c}.room-status.maintenance{background:#f39c12}:root{--primary-color:#2c83f6;--primary-light:#e3f2fd;--warning-color:#ff9800;--danger-color:#f44336;--info-color:#17a2b8;--text-primary:#2d3748;--text-secondary:#718096;--text-muted:#a0aec0;--border-color:#e2e8f0;--border-light:#f1f5f9;--bg-surface:#fff;--bg-subtle:#f8fafc;--bg-hover:#f7fafc;--table-hover-bg:#f1f5f9;--gradient-primary:linear-gradient(135deg,#2c83f6,#1a5ebf);--gradient-success:linear-gradient(135deg,#4caf50,#388e3c);--gradient-danger:linear-gradient(135deg,#f44336,#d32f2f);--gradient-warning:linear-gradient(135deg,#ff9800,#f57c00);--gradient-info:linear-gradient(135deg,#17a2b8,#138496);--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;--shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;--shadow-xl:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;--radius-sm:4px;--radius-xl:16px;--transition-fast:all 0.15s ease;--transition:all 0.2s ease;--transition-slow:all 0.3s ease}.project-group{margin-bottom:3rem}.project-group h3{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#2c83f6,#1a5ebf);background:var(--gradient-primary);-webkit-background-clip:text;background-clip:text;border-bottom:3px solid #2c83f6;border-bottom:3px solid var(--primary-color);color:#2d3748;color:var(--text-primary);font-size:1.5rem;font-weight:700;margin-bottom:1.5rem;padding:16px 24px;position:relative}.project-group h3:after{background:linear-gradient(135deg,#2c83f6,#1a5ebf);background:var(--gradient-primary);border-radius:2px;bottom:-3px;content:"";height:3px;left:0;position:absolute;width:60px}.project-group-tag{background-color:#e3f2fd;color:#1976d2}.planner,.project-group-tag{border-radius:4px;display:inline-block;font-size:.85rem;font-weight:500;padding:.2rem .5rem}.planner{background-color:#f3e5f5;color:#7b1fa2}@media (max-width:768px){.planner,.project-group{font-size:.75rem;padding:.15rem .3rem}}.experience-container{background:#fff;background:var(--bg-surface);border-radius:8px;border-radius:var(--radius-md);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;margin:2rem auto;max-width:1400px;padding:1.5rem}.list-container{background:linear-gradient(135deg,#f8fafc,#e2e8f0);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;min-height:100vh;padding:32px}.list-header{align-items:center;background:#fff;background:var(--bg-surface);border:1px solid #f1f5f9;border:1px solid var(--border-light);border-radius:12px;border-radius:var(--radius-lg);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;box-shadow:var(--shadow-md);display:flex;justify-content:space-between;margin-bottom:32px;padding:24px}.list-header h1,.list-header h2{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#2c83f6,#1a5ebf);background:var(--gradient-primary);-webkit-background-clip:text;background-clip:text;color:#2d3748;color:var(--text-primary);font-size:28px;font-weight:700;margin:0}.table-wrapper{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid #f1f5f9;border:1px solid var(--border-light);border-radius:12px;border-radius:var(--radius-lg);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;box-shadow:var(--shadow-lg);margin:1.5rem 0;overflow:hidden;overflow-x:auto}.experience-table,.table-wrapper{background:#fff;background:var(--bg-surface)}.experience-table{border-collapse:collapse;font-size:14px;min-width:1200px;width:100%}.experience-table td,.experience-table th{border-bottom:1px solid #f1f5f9;border-bottom:1px solid var(--border-light);overflow:hidden;padding:16px 20px;text-align:center;text-overflow:ellipsis;vertical-align:middle;white-space:nowrap}.experience-table th{background:linear-gradient(135deg,#f8fafc,#f1f5f9);background:linear-gradient(135deg,var(--bg-subtle) 0,#f1f5f9 100%);border-bottom:2px solid #2c83f6;border-bottom:2px solid var(--primary-color);color:#2d3748;color:var(--text-primary);font-size:13px;font-weight:700;letter-spacing:.5px;position:-webkit-sticky;position:sticky;text-transform:uppercase;top:0;z-index:10}.experience-table tbody tr{border-left:3px solid #0000;transition:all .2s ease;transition:var(--transition)}.experience-table tbody tr:hover{background:#f1f5f9;background:var(--table-hover-bg);border-left-color:#2c83f6;border-left-color:var(--primary-color);box-shadow:0 1px 2px 0 #0000000d;box-shadow:var(--shadow-sm);transform:translateX(2px)}.experience-table tbody tr:nth-child(2n){background:#f8fafc80}.experience-table tbody tr:nth-child(2n):hover{background:#f1f5f9;background:var(--table-hover-bg)}.experience-table tr:not(:last-child) td{border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--border-color)}.status{border-radius:20px;font-size:11px;font-weight:700;letter-spacing:.8px;min-width:90px;padding:6px 16px;text-align:center;transition:all .2s ease;transition:var(--transition)}.status:before{transition:left .6s ease}.status.scheduled{background:linear-gradient(135deg,#ff9800,#f57c00);background:var(--gradient-warning);box-shadow:0 2px 8px #ff98004d;color:#fff}.status.checked_in{background:linear-gradient(135deg,#4caf50,#388e3c);background:var(--gradient-success);box-shadow:0 2px 8px #4caf504d;color:#fff}.status.checked_out{background:linear-gradient(135deg,#f44336,#d32f2f);background:var(--gradient-danger);box-shadow:0 2px 8px #f443364d;color:#fff}.status.cancelled{background:linear-gradient(135deg,#17a2b8,#138496);background:var(--gradient-info);box-shadow:0 2px 8px #17a2b84d;color:#fff}.status.pending{background:linear-gradient(135deg,#ff9800,#f57c00);background:var(--gradient-warning);box-shadow:0 2px 8px #ff98004d;color:#fff}.status.confirmed{background:linear-gradient(135deg,#4caf50,#388e3c);background:var(--gradient-success);box-shadow:0 2px 8px #4caf504d;color:#fff}.status.completed{background:linear-gradient(135deg,#2c83f6,#1a5ebf);background:var(--gradient-primary);box-shadow:0 2px 8px #2c83f64d;color:#fff}.status.rescheduled{background:linear-gradient(135deg,#17a2b8,#138496);background:var(--gradient-info);box-shadow:0 2px 8px #17a2b84d;color:#fff}.status:hover{box-shadow:0 4px 12px #0003;transform:translateY(-2px) scale(1.05)}.action-group{flex-wrap:wrap;gap:10px}.action-group .btn{align-items:center;border:none;border-radius:8px;border-radius:var(--radius-md);cursor:pointer;display:inline-flex;font-size:12px;font-weight:600;gap:6px;justify-content:center;letter-spacing:.5px;min-width:80px;overflow:hidden;padding:8px 16px;position:relative;text-decoration:none;text-transform:uppercase;transition:all .2s ease;transition:var(--transition)}.action-group .btn:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s ease;width:100%}.action-group .btn:hover:before{left:100%}.btn-primary{background:linear-gradient(135deg,#2c83f6,#1a5ebf);background:var(--gradient-primary);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;box-shadow:var(--shadow-md);color:#fff}.btn-primary:hover{background:linear-gradient(135deg,#1a5ebf,#1565c0);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;box-shadow:var(--shadow-lg);transform:translateY(-2px) scale(1.02)}.btn-success{background:linear-gradient(135deg,#4caf50,#388e3c);background:var(--gradient-success);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;box-shadow:var(--shadow-md);color:#fff}.btn-success:hover{background:linear-gradient(135deg,#388e3c,#2e7d32);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;box-shadow:var(--shadow-lg);transform:translateY(-2px) scale(1.02)}.btn-danger{background:linear-gradient(135deg,#f44336,#d32f2f);background:var(--gradient-danger);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;box-shadow:var(--shadow-md);color:#fff}.btn-danger:hover{background:linear-gradient(135deg,#d32f2f,#c62828);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;box-shadow:var(--shadow-lg);transform:translateY(-2px) scale(1.02)}.btn-warning{background:linear-gradient(135deg,#ff9800,#f57c00);background:var(--gradient-warning);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;box-shadow:var(--shadow-md);color:#fff}.btn-warning:hover{background:linear-gradient(135deg,#f57c00,#ef6c00);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;box-shadow:var(--shadow-lg);transform:translateY(-2px) scale(1.02)}.btn-info{background:linear-gradient(135deg,#17a2b8,#138496);background:var(--gradient-info);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;box-shadow:var(--shadow-md);color:#fff}.btn-info:hover{background:linear-gradient(135deg,#138496,#117a8b);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;box-shadow:var(--shadow-lg);transform:translateY(-2px) scale(1.02)}@media (max-width:1024px){.list-container{padding:24px}.list-header{align-items:stretch;flex-direction:column;gap:20px}.filter-group{justify-content:center}}@media (max-width:768px){.list-container{padding:16px}.list-header{margin-bottom:24px;padding:16px}.list-header h2{font-size:24px}.table-wrapper{border-radius:8px;border-radius:var(--radius-md);overflow-x:auto}.experience-table{min-width:1000px}.experience-table td,.experience-table th{font-size:13px;font-size:12px;overflow:hidden;padding:12px 16px;padding:12px 8px;text-overflow:ellipsis;white-space:nowrap}.experience-table td:nth-child(3){max-width:160px;min-width:140px}.experience-table td:first-child,.experience-table td:nth-child(2){max-width:100px;min-width:80px}.filter-group{align-items:stretch;flex-direction:column;gap:12px}.filter-group select{width:100%}.action-group{flex-direction:column;gap:8px}.action-group .btn{justify-content:center;min-width:auto;width:100%}.action-group{flex-direction:row!important;flex-wrap:wrap;gap:.25rem}.status{display:inline-block;font-size:10px;min-width:70px;padding:4px 12px;white-space:nowrap}}@media (max-width:480px){.list-container,.list-header{padding:12px}.list-header h2{font-size:20px}.experience-table td,.experience-table th{font-size:12px;padding:8px 12px}}.action-btn[disabled]{cursor:not-allowed;filter:grayscale(.8);opacity:.6}.modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;overflow-x:auto;overflow-y:auto;padding:1rem;position:fixed;right:0;top:0;z-index:1000}.feedback-modal{background:#fff;border-radius:8px;max-width:90vw;padding:20px;width:600px}.comment-section textarea{border:1px solid #e2e8f0;border:1px solid var(--border-color);border-radius:6px;box-sizing:border-box;font-family:inherit;height:120px;margin-top:.5rem;max-width:100%;padding:1rem;resize:vertical;width:100%}.modal-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem}.cancel-btn{background:#f8f9fa;border:1px solid #e2e8f0;border:1px solid var(--border-color);border-radius:6px;color:#495057;padding:.8rem 1.5rem}.submit-btn{background:#2196f3;border:none;border-radius:6px;color:#fff;padding:.8rem 1.5rem}.submit-btn:disabled{background:#90caf9;cursor:not-allowed}.highlight-row{background-color:#e8f5e9!important;border-left:4px solid #4caf50}.inactive-row{background-color:#f5f5f5;opacity:.6}.room-info{display:flex;flex-direction:column}.room-number{color:#2c3e50;font-weight:600}.room-type{color:#7f8c8d;font-size:.9em}.score-stars{color:#f1c40f;font-size:1.2em}.score-stars .active{color:#e67e22}.conversion-status{border-radius:12px;font-size:.9em;padding:4px 8px}.conversion-status.待跟进{background:#3498db;color:#fff}.conversion-status.已锁房{background:#2ecc71;color:#fff}.conversion-status.已放弃{background:#e74c3c;color:#fff}.time-range{color:#34495e;font-weight:500}.duration{color:#95a5a6;font-size:.85em}.list-pagination{margin-top:2rem}.filter-group{align-items:center;background:#f8fafc;background:var(--bg-subtle);border-radius:8px;border-radius:var(--radius-md);flex-wrap:wrap;gap:20px;overflow:visible;padding:1rem;position:relative}.filter-group select{background:#fff;background:var(--bg-surface);border:2px solid #e2e8f0;border:2px solid var(--border-color);border-radius:8px;border-radius:var(--radius-md);color:#2d3748;color:var(--text-primary);cursor:pointer;font-size:14px;font-weight:500;min-width:140px;padding:12px 16px;transition:all .2s ease;transition:var(--transition)}.filter-group select:hover{background:#f7fafc;background:var(--bg-hover)}.filter-group select:focus,.filter-group select:hover{border-color:#2c83f6;border-color:var(--primary-color)}.filter-group select:focus{background:#fff;background:var(--bg-surface);box-shadow:0 0 0 4px #2c83f626;outline:none}.filter-controls{gap:.75rem;position:relative}.room-filter,.status-filter{background:#fff;border:1px solid #e2e8f0;border:1px solid var(--border-color);border-radius:8px;border-radius:var(--radius-md);min-width:150px;padding:.625rem 2.5rem .625rem 1rem;transition:border-color .2s,box-shadow .2s}.status-filter{background-position:right .75rem center;background-repeat:no-repeat;background-size:1rem}.status-filter-container{position:relative}.status-filter-dropdown{align-items:center;cursor:pointer;display:flex;justify-content:space-between;min-height:20px;padding:8px;position:relative;-webkit-user-select:none;user-select:none;width:150px}.status-dropdown-menu,.status-filter-dropdown{background-color:#fff;border:1px solid #e2e8f0;border:1px solid var(--border-color);border-radius:4px}.status-dropdown-menu{box-shadow:0 4px 12px #00000026;left:0;margin-top:2px;max-height:200px;overflow-y:auto;position:absolute;right:0;top:100%;z-index:9999}.status-dropdown-menu label{align-items:center;border-bottom:1px solid #f0f0f0;cursor:pointer;display:flex;font-size:14px;margin:0;padding:8px 12px;transition:background-color .2s}.status-dropdown-menu label:last-child{border-bottom:none}.status-dropdown-menu label:hover{background-color:#f5f5f5}.status-dropdown-menu input[type=checkbox]{margin-left:0;margin-right:8px}.placeholder-text{color:#999;font-size:14px}.dropdown-arrow{color:#666;font-size:12px}@media (max-width:768px){.status-filter-dropdown{width:100%}}.date-section{margin:1.5rem 0}.date-section label{margin-right:1rem}.date-section input{border:1px solid #e2e8f0;border:1px solid var(--border-color);border-radius:6px;padding:.8rem}.clickable-row{cursor:pointer;transition:background-color .2s}.clickable-row:hover{background-color:#f5f5f5}.follow-up-row{background-color:#f9f9f9}.follow-up-row td{padding:0!important}.follow-up-container{border-top:1px solid #eee;box-sizing:border-box;padding:1rem;width:100%}.follow-up-list{list-style:none;margin:0;padding:0}.follow-up-item{border-bottom:1px solid #eee;padding:.75rem 0}.follow-up-item:last-child{border-bottom:none}.follow-up-content{margin-bottom:.5rem}.follow-up-meta{color:#666;display:flex;font-size:.85rem;gap:1rem}.no-follow-ups{color:#999;font-style:italic;padding:1rem 0}.checkin-modal{max-width:90vw;width:500px}.checkin-modal .modal-header{align-items:center;background-color:#f8f9fa;border-bottom:1px solid #e8e8e8;display:flex;justify-content:space-between;padding:20px}.checkin-modal .modal-header h3{color:#333;font-size:18px;font-weight:600;margin:0}.checkin-modal .close-btn{align-items:center;background:none;border:none;border-radius:50%;color:#666;cursor:pointer;display:flex;font-size:24px;height:30px;justify-content:center;padding:0;transition:all .2s ease;width:30px}.checkin-modal .close-btn:hover{background-color:#f0f0f0;color:#333}.checkin-modal .modal-body{padding:20px}.checkin-modal .order-info{background-color:#f8f9fa;border-left:4px solid #007bff;border-radius:6px;margin-bottom:20px;padding:15px}.checkin-modal .order-info p{color:#555;font-size:14px;margin:5px 0}.checkin-modal .form-group{margin-bottom:20px}.checkin-modal .form-group label{color:#333;display:block;font-size:14px;font-weight:500;margin-bottom:8px}.checkin-modal .form-group input{border:1px solid #ddd;border-radius:4px;box-sizing:border-box;font-size:14px;padding:10px 12px;transition:border-color .2s ease;width:100%}.checkin-modal .form-group input:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40;outline:none}.checkin-modal .form-group input:disabled{background-color:#f5f5f5;cursor:not-allowed}.checkin-modal .modal-actions{border-top:1px solid #e8e8e8;display:flex;gap:10px;justify-content:flex-end;margin-top:30px;padding-top:20px}.checkin-modal .btn-cancel,.checkin-modal .btn-submit{border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500;min-width:80px;padding:10px 20px;transition:all .2s ease}.checkin-modal .btn-cancel{background-color:#f8f9fa;border:1px solid #dee2e6;color:#6c757d}.checkin-modal .btn-cancel:hover:not(:disabled){background-color:#e9ecef;border-color:#adb5bd}.checkin-modal .btn-submit{background-color:#28a745;color:#fff}.checkin-modal .btn-submit:hover:not(:disabled){background-color:#218838}.checkin-modal .btn-cancel:disabled,.checkin-modal .btn-submit:disabled{cursor:not-allowed;opacity:.6}@media (max-width:768px){.checkin-modal{margin:20px auto;width:95vw}.checkin-modal .modal-actions{flex-direction:column}.checkin-modal .btn-cancel,.checkin-modal .btn-submit{width:100%}}.cancel-modal-overlay{align-items:center;animation:fadeIn .3s ease;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.cancel-modal-content{background:#fff;border-radius:8px;box-shadow:0 4px 12px #00000026;max-width:90%;padding:1.5rem;width:450px}.cancel-modal-content h3{color:#333;font-size:1.2rem;margin-bottom:1.5rem;margin-top:0}.cancel-modal-section{margin-bottom:1.2rem}.cancel-modal-section label{color:#555;display:block;font-weight:500;margin-bottom:.5rem}.cancel-modal-section textarea{border:1px solid #ddd;border-radius:4px;padding:.75rem;resize:vertical;width:100%}.refund-amount{align-items:center;display:flex;gap:8px}.refund-amount input{border:1px solid #ddd;border-radius:4px;padding:.5rem;width:120px}.hint{color:#666;font-size:.85rem}.cancel-modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:1.5rem}.cancel-modal-actions button{border-radius:4px;cursor:pointer;padding:.5rem 1rem;transition:all .2s}.confirm-btn{background:#f44336;border:none;color:#fff}.confirm-btn:hover{background:#d32f2f}.confirm-btn:disabled{background:#ffcdd2;cursor:not-allowed}.cancel-btn{background:#f5f5f5;border:1px solid #ddd}.cancel-btn:hover{background:#eee}.order-container{background:var(--background-secondary);min-height:100vh;padding:var(--spacing-lg)}.filter-group{background:var(--background-primary);border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);gap:var(--spacing-lg);margin-bottom:var(--spacing-xl);padding:var(--spacing-lg)}.filter-controls{display:flex;flex-wrap:wrap}.filter-controls,.filter-row{align-items:center;gap:var(--spacing-md)}.filter-row{width:100%}.search-filter{border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-xs);color:var(--text-primary);flex:1 1;font-size:var(--font-size-sm);min-width:280px;padding:.75rem 1rem;transition:var(--transition-normal)}.search-filter,.search-filter:focus{background:var(--background-primary)}.search-filter:focus{border-color:var(--primary-color);box-shadow:var(--shadow-focus);outline:none}.search-filter:hover{background:var(--background-hover);border-color:var(--border-dark)}.search-filter::placeholder{color:var(--text-muted);font-style:italic}.date-filter{background:var(--background-primary);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-xs);color:var(--text-primary);font-size:var(--font-size-sm);min-width:140px;padding:.75rem 1rem;transition:var(--transition-normal)}.date-filter:focus{border-color:var(--primary-color);box-shadow:var(--shadow-focus);outline:none}.date-filter:hover{background:var(--background-hover);border-color:var(--border-dark)}.filter-select{box-shadow:var(--shadow-xs)!important;min-width:150px}.filter-select .ant-select-selector{background:var(--background-primary)!important;border-color:var(--border-color)!important;border-radius:var(--radius-md)!important;min-height:42px!important;padding:.25rem .5rem!important;transition:var(--transition-normal)!important}.filter-select:hover .ant-select-selector{background:var(--background-hover)!important;border-color:var(--border-dark)!important}.filter-select.ant-select-focused .ant-select-selector{border-color:var(--primary-color)!important;box-shadow:var(--shadow-focus)!important}.filter-select .ant-select-selection-placeholder{color:var(--text-muted)!important;font-style:italic}.filter-select .ant-select-arrow{display:none!important}.table-wrapper .ant-table-thead>tr>th{background:var(--background-secondary)!important;border-bottom:2px solid var(--border-color)!important;font-weight:var(--font-weight-semibold)!important;text-align:center!important}.table-wrapper .ant-table-tbody>tr>td{text-align:center!important;vertical-align:middle!important}.table-wrapper .ant-table{background:var(--background-primary);box-shadow:var(--shadow-sm);overflow:hidden}.table-wrapper .ant-table,.table-wrapper .ant-table-container{border-radius:var(--radius-lg)}.table-wrapper .ant-table-tbody>tr>td:last-child,.table-wrapper .ant-table-thead>tr>th:last-child{text-align:center!important}.loading-indicator{align-items:center;background:var(--background-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);color:var(--text-secondary);display:flex;font-size:var(--font-size-lg);justify-content:center;margin:var(--spacing-lg) 0;padding:var(--spacing-3xl)}.loading-indicator:before{animation:var(--animation-spin);border:2px solid var(--border-light);border-radius:50%;border-top-color:var(--primary-color);content:"";display:inline-block;height:20px;margin-right:var(--spacing-md);width:20px}.action-group{display:flex;flex-wrap:nowrap;gap:var(--spacing-sm)}.action-group,.order-action-btn{align-items:center;justify-content:center}.order-action-btn{border:none;border-radius:var(--radius-md);cursor:pointer;display:inline-flex;font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);letter-spacing:.025em;min-width:60px;overflow:hidden;padding:.5rem 1rem;position:relative;text-decoration:none;transition:var(--transition-smooth)}.order-action-btn:before{background:linear-gradient(90deg,#0000,#ffffff4d,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:var(--transition-fast);width:100%}.order-action-btn:hover:before{left:100%}.order-action-btn:focus{outline:none;transform:scale(1.05)}.order-action-btn:active{transform:scale(.98)}.order-action-btn.primary{background:var(--gradient-primary);box-shadow:var(--shadow-sm);color:var(--text-inverse)}.order-action-btn.primary:hover{box-shadow:var(--shadow-md),var(--shadow-glow);transform:translateY(-2px) scale(1.05)}.order-action-btn.secondary{background:var(--gradient-info);box-shadow:var(--shadow-sm);color:var(--text-inverse)}.order-action-btn.secondary:hover{box-shadow:var(--shadow-md),var(--shadow-glow);transform:translateY(-2px) scale(1.05)}.order-action-btn.info{background:var(--gradient-warning);box-shadow:var(--shadow-sm);color:var(--text-inverse)}.order-action-btn.info:hover{box-shadow:var(--shadow-md),var(--shadow-glow-warning);transform:translateY(-2px) scale(1.05)}.order-action-btn.danger{background:var(--gradient-danger);box-shadow:var(--shadow-sm);color:var(--text-inverse)}.order-action-btn.danger:hover{box-shadow:var(--shadow-md),var(--shadow-glow-danger);transform:translateY(-2px) scale(1.05)}.order-action-btn.success{background:var(--gradient-success);box-shadow:var(--shadow-sm);color:var(--text-inverse)}.order-action-btn.success:hover{box-shadow:var(--shadow-md),var(--shadow-glow-success);transform:translateY(-2px) scale(1.05)}.order-action-btn.warning{background:var(--gradient-warning);box-shadow:var(--shadow-sm);color:var(--text-inverse)}.order-action-btn.warning:hover{box-shadow:var(--shadow-md),var(--shadow-glow-warning);transform:translateY(-2px) scale(1.05)}.list-pagination{display:flex;justify-content:center;margin-top:var(--spacing-xl)}.status{align-items:center;border-radius:var(--radius-full);box-shadow:var(--shadow-sm);color:var(--text-inverse);display:inline-flex;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);justify-content:center;letter-spacing:.05em;line-height:1;min-width:80px;overflow:hidden;padding:.375rem .875rem;position:relative;text-transform:uppercase;transition:var(--transition-normal)}.status:before{background:linear-gradient(90deg,#0000,#ffffff4d,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .6s;width:100%}.status:hover:before{left:100%}.status:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.status.待申请{background:var(--gradient-info)}.status.申请中{background:var(--gradient-warning)}.status.已驳回{background:var(--gradient-danger)}.status.已全款{background:var(--gradient-success)}.status.定金,.status.部分付款{background:var(--gradient-warning)}.status.已退单,.status.待付款{background:var(--gradient-danger)}.status.已退单{opacity:.7}@media (max-width:1200px){.filter-controls{align-items:stretch;flex-direction:column;gap:var(--spacing-md)}.filter-row{justify-content:space-between}.field-selector-group{justify-content:flex-start;margin-left:0}}@media (max-width:768px){.filter-group,.order-container{padding:var(--spacing-md)}.filter-group{gap:var(--spacing-md)}.filter-controls{gap:var(--spacing-md)}.filter-controls,.filter-row{align-items:stretch;flex-direction:column}.filter-row{gap:var(--spacing-sm)}.date-filter,.filter-select,.search-filter{min-width:auto;width:100%}.field-selector-group{flex-direction:column;margin-left:0;width:100%}.field-remover,.field-selector{min-width:auto;width:100%}.action-group{flex-wrap:wrap;gap:var(--spacing-xs)}.order-action-btn{font-size:var(--font-size-xs);min-width:50px;padding:.375rem .75rem}}@media (max-width:480px){.order-container{padding:var(--spacing-sm)}.list-header{align-items:stretch;flex-direction:column;gap:var(--spacing-md)}.list-header h1{font-size:var(--font-size-xl);text-align:center}}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.payment-list{display:flex;flex-direction:column;gap:var(--spacing-md);margin-top:var(--spacing-md)}.payment-item{background:var(--background-primary);border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden;padding:var(--spacing-lg);position:relative;transition:all .2s ease}.payment-item:hover{border-color:var(--primary-200);box-shadow:var(--shadow-md);transform:translateY(-1px)}.payment-item-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:var(--spacing-md)}.payment-method{align-items:center;background:var(--primary-50);border:1px solid var(--primary-200);border-radius:var(--radius-full);color:var(--primary-700);display:inline-flex;font-weight:500;gap:var(--spacing-xs);padding:.375rem .75rem;white-space:nowrap}.payment-method,.payment-method:before{font-size:var(--font-size-sm)}.payment-method.银行转账{background:var(--info-50);border-color:var(--info-200);color:var(--info-700)}.payment-method.银行转账:before{content:"🏦"}.payment-method.现金{background:var(--success-50);border-color:var(--success-200);color:var(--success-700)}.payment-method.现金:before{content:"💵"}.payment-method.支付宝{background:var(--warning-50);border-color:var(--warning-200);color:var(--warning-700)}.payment-method.支付宝:before{content:"💰"}.payment-method.微信支付{background:var(--purple-50);border-color:var(--purple-200);color:var(--purple-700)}.payment-method.微信支付:before{content:"💳"}.payment-amount{color:var(--success-600);font-size:var(--font-size-xl);font-weight:700;text-align:right}.payment-item-content{grid-gap:var(--spacing-md);display:grid;gap:var(--spacing-md);grid-template-columns:1fr 1fr;margin-bottom:var(--spacing-md)}.payment-info-item{display:flex;flex-direction:column;gap:var(--spacing-xs)}.payment-info-label{color:var(--text-secondary);font-size:var(--font-size-xs);font-weight:500;letter-spacing:.05em;text-transform:uppercase}.payment-info-value{color:var(--text-primary);font-size:var(--font-size-sm);font-weight:500}.payment-date,.payment-operator{color:var(--text-secondary);font-size:var(--font-size-sm)}.payment-operator:before{content:"👤 ";margin-right:var(--spacing-xs)}.voucher-link{align-items:center;align-self:flex-start;background:var(--primary-50);border:1px solid var(--primary-200);border-radius:var(--radius-md);color:var(--primary-600);display:inline-flex;font-size:var(--font-size-sm);font-weight:500;gap:var(--spacing-xs);margin-top:var(--spacing-sm);padding:.5rem 1rem;text-decoration:none;transition:all .2s ease}.voucher-link:hover{background:var(--primary-100);border-color:var(--primary-300);color:var(--primary-700);text-decoration:none;transform:translateY(-1px)}.voucher-link:before{content:"📎";font-size:var(--font-size-sm)}.no-payments{background:var(--background-secondary);border:2px dashed var(--border-light);border-radius:var(--radius-lg);color:var(--text-secondary);font-size:var(--font-size-sm);margin-top:var(--spacing-md);padding:var(--spacing-xl);text-align:center}.no-payments:before{content:"💳";display:block;font-size:2rem;margin-bottom:var(--spacing-sm);opacity:.5}.payment-item:before{background:var(--primary-400);border-radius:0 var(--radius-sm) var(--radius-sm) 0;content:"";height:100%;left:0;position:absolute;top:0;width:4px}.payment-item.银行转账:before{background:var(--info-400)}.payment-item.现金:before{background:var(--success-400)}.payment-item.支付宝:before{background:var(--warning-400)}.payment-item.微信支付:before{background:var(--purple-400)}@media (max-width:768px){.payment-item-header{align-items:flex-start;flex-direction:column;gap:var(--spacing-sm)}.payment-amount{font-size:var(--font-size-lg);text-align:left}.payment-item-content{gap:var(--spacing-sm);grid-template-columns:1fr}.payment-item{padding:var(--spacing-md)}}@media (max-width:480px){.payment-list{gap:var(--spacing-sm)}.payment-method{font-size:var(--font-size-xs);padding:.25rem .5rem}.payment-amount{font-size:var(--font-size-md)}.voucher-link{font-size:var(--font-size-xs);padding:.375rem .75rem}}:root{--primary-color:#4361ee;--primary-light:#4cc9f0;--success-color:#4caf50;--warning-color:#f8961e;--danger-color:#f72585;--text-primary:#2b2d42;--text-secondary:#8d99ae;--border-color:#edf2f4;--bg-color:#f8f9fa;--radius-md:8px;--radius-lg:12px;--shadow-sm:0 1px 3px #0000001a;--shadow-md:0 4px 6px #0000001a;--transition:all 0.2s cubic-bezier(0.4,0,0.2,1)}.order-form-container{background:#fff;border-radius:12px;border-radius:var(--radius-lg);box-shadow:0 4px 6px #0000001a;box-shadow:var(--shadow-md);margin:2rem auto;max-width:900px;padding:2.5rem}.order-form-container h1{border-bottom:1px solid #edf2f4;border-bottom:1px solid var(--border-color);color:#2b2d42;color:var(--text-primary);font-size:1.75rem;font-weight:600;margin-bottom:2rem;padding-bottom:1rem}.form-section{background:#f8f9fa;background:var(--bg-color);border-radius:8px;border-radius:var(--radius-md);margin-bottom:2rem;padding:1.5rem;transition:all .2s cubic-bezier(.4,0,.2,1);transition:var(--transition)}.form-section:hover{box-shadow:0 1px 3px #0000001a;box-shadow:var(--shadow-sm)}.form-section h3{color:#2b2d42;color:var(--text-primary);font-size:1.25rem;font-weight:500;margin-bottom:1.25rem}.form-row{grid-gap:1.5rem;align-items:start;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-bottom:1.5rem}.form-section .form-row{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.form-group input,.form-group select,.form-group textarea{box-sizing:border-box;min-width:0}.form-group:has(input[name=roomNumber]),.form-group:has(select[name=cardType]){flex:1 1;min-width:280px}.form-group:has(input[name=paidAmount]),.form-group:has(input[name=totalAmount]){flex:1 1;min-width:280px}.form-group{margin-bottom:1.25rem;min-width:0}.resident-form .form-row{gap:1rem}.resident-form .form-group{margin-bottom:1rem;width:100%}.resident-form input[type=text]{box-sizing:border-box;width:100%}.form-group label{color:#2b2d42;color:var(--text-primary);display:block;font-size:.875rem;font-weight:500;margin-bottom:.5rem}.form-group input,.form-group select,.form-group textarea{background:#fff;border:1px solid #edf2f4;border:1px solid var(--border-color);border-radius:8px;border-radius:var(--radius-md);color:#2b2d42;color:var(--text-primary);font-size:.875rem;padding:.875rem;transition:all .2s cubic-bezier(.4,0,.2,1);transition:var(--transition);width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#4361ee;border-color:var(--primary-color);box-shadow:0 0 0 3px #4361ee1a;outline:none}.error{color:#f72585;color:var(--danger-color);font-size:.75rem;margin-top:.25rem}.checkbox-container,.checkbox-group{align-items:center;display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;gap:.75rem;white-space:nowrap}.checkbox-container label,.checkbox-group label{align-items:center;display:inline-flex;gap:.5rem;margin-bottom:0;white-space:nowrap}.health-section,.hobbies-section{background:#fff;border:1px solid #edf2f4;border:1px solid var(--border-color);border-radius:8px;border-radius:var(--radius-md);margin-top:1.5rem;padding:1rem}.health-section h4,.hobbies-section h4{color:#2b2d42;color:var(--text-primary);font-size:1rem;margin-bottom:1rem}.form-actions{border-top:1px solid #edf2f4;border-top:1px solid var(--border-color);display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem;padding-top:1.5rem}.form-actions button{border:none;border-radius:8px;border-radius:var(--radius-md);cursor:pointer;font-weight:500;padding:.875rem 1.75rem;transition:all .2s cubic-bezier(.4,0,.2,1);transition:var(--transition)}.form-actions button[type=submit]{background:#4361ee;background:var(--primary-color);color:#fff}.form-actions button[type=submit]:hover{background:#3a56d8;transform:translateY(-1px)}.form-actions button[type=button]{background:#fff;border:1px solid #edf2f4;border:1px solid var(--border-color);color:#2b2d42;color:var(--text-primary)}.form-actions button[type=button]:hover{background:#f8f9fa;background:var(--bg-color)}@media (max-width:768px){.order-form-container{margin:1rem;padding:1.5rem}.form-row{grid-template-columns:1fr}.form-section{padding:1rem}}.checkbox-group,.radio-group{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;gap:1rem;margin-top:.5rem;overflow-x:auto}.multi-checkbox-container{grid-gap:.75rem;background:#fff;border:1px solid #edf2f4;border:1px solid var(--border-color);display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-top:.5rem;padding:1rem}.multi-checkbox-container,.multi-checkbox-item{border-radius:8px;border-radius:var(--radius-md)}.multi-checkbox-item{align-items:center;background:#f8f9fa;background:var(--bg-color);border:1px solid #0000;cursor:pointer;display:flex;gap:.5rem;padding:.5rem .75rem;transition:all .2s cubic-bezier(.4,0,.2,1);transition:var(--transition);-webkit-user-select:none;user-select:none}.multi-checkbox-item:hover{background:#4361ee0d;border-color:#4361ee;border-color:var(--primary-color)}.multi-checkbox-item.checked{background:#4361ee1a;border-color:#4361ee;border-color:var(--primary-color);color:#4361ee;color:var(--primary-color);font-weight:500}.multi-checkbox-item input[type=checkbox]{accent-color:#4361ee;accent-color:var(--primary-color);cursor:pointer;height:1rem;margin:0;width:1rem}.multi-checkbox-item label{cursor:pointer;font-size:.875rem;margin:0;white-space:nowrap}@media (max-width:768px){.multi-checkbox-container{gap:.5rem;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));padding:.75rem}.multi-checkbox-item{padding:.375rem .5rem}.multi-checkbox-item label{font-size:.8rem}}.checkbox-group label,.radio-group label{align-items:center;background:#fff;border:1px solid #edf2f4;border:1px solid var(--border-color);border-radius:8px;border-radius:var(--radius-md);cursor:pointer;display:flex;gap:.5rem;padding:.5rem 1rem;transition:all .2s cubic-bezier(.4,0,.2,1);transition:var(--transition);white-space:nowrap}.checkbox-group label:hover,.radio-group label:hover{border-color:#4361ee;border-color:var(--primary-color);box-shadow:0 0 0 1px #4361ee;box-shadow:0 0 0 1px var(--primary-color)}.checkbox-group input[type=checkbox],.radio-group input[type=radio]{accent-color:#4361ee;accent-color:var(--primary-color);height:1rem;margin:0;width:1rem}.health-section .checkbox-group,.health-section .radio-group{gap:.75rem}.health-section .checkbox-group label,.health-section .radio-group label{font-size:.875rem;padding:.375rem .75rem}@media (max-width:768px){.checkbox-group,.radio-group{gap:.75rem}.checkbox-group label,.radio-group label{padding:.375rem .75rem}}.resident-form .form-row input[type=text]{background:#fff;border:1px solid #edf2f4;border:1px solid var(--border-color);border-radius:8px;border-radius:var(--radius-md);color:#2b2d42;color:var(--text-primary);font-size:.875rem;padding:.875rem;transition:all .2s cubic-bezier(.4,0,.2,1);transition:var(--transition);width:100%}.resident-form .form-row input[type=text]:focus{border-color:#4361ee;border-color:var(--primary-color);box-shadow:0 0 0 3px #4361ee1a;outline:none}.add-companion-btn,.add-resident-btn{background:#4361ee;background:var(--primary-color);border:none;border-radius:8px;border-radius:var(--radius-md);color:#fff;cursor:pointer;font-size:.875rem;font-weight:500;margin-top:1rem;padding:.75rem 1.5rem;transition:all .2s cubic-bezier(.4,0,.2,1);transition:var(--transition)}.add-resident-btn:hover{background:#3a56d8;box-shadow:0 1px 3px #0000001a;box-shadow:var(--shadow-sm);transform:translateY(-1px)}.resident-form{border-bottom:1px dashed #edf2f4;border-bottom:1px dashed var(--border-color);margin-bottom:2rem;padding-bottom:1.5rem}.resident-form:last-child{border-bottom:none}.resident-form .form-row .form-group{margin-bottom:1rem}.resident-form .form-row input[type=text]{margin-bottom:.5rem}.resident-form .form-row .form-group:has(input[name$=retiredOccupation]),.resident-form .form-row .form-group:has(input[name$=retiredTitle]),.resident-form .form-row .form-group:has(input[name$=retiredUnit]){flex:1 1;margin-right:1.5rem}.resident-form .form-row .form-group:has(>.checkbox-group){margin-top:1rem}.health-section .form-row{gap:1.5rem}.health-section .form-group{margin-bottom:1.5rem}.hobbies-section .form-row{gap:1.5rem}.hobbies-section .form-group{margin-bottom:1rem}.companion-header,.resident-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:15px}.customer-button-container{display:inline-block;margin-bottom:10px;margin-right:10px;position:relative}.remove-companion-btn,.remove-resident-btn{background-color:#f72585;background-color:var(--danger-color);border:none;border-radius:8px;border-radius:var(--radius-md);color:#fff;cursor:pointer;font-size:.875rem;padding:.375rem .875rem;transition:all .2s cubic-bezier(.4,0,.2,1);transition:var(--transition)}.remove-resident-btn-label{align-items:center;background-color:#ff4d4f;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:12px;height:20px;justify-content:center;padding:0;position:absolute;right:-8px;top:-8px;width:20px}.remove-companion-btn:hover,.remove-resident-btn:hover{background-color:#d11a6b;transform:translateY(-1px)}.remove-companion-btn:active,.remove-resident-btn:active{transform:translateY(0)}.toggle-companion-btn{background-color:#f0f0f0;border:1px solid #ddd;border-radius:4px;cursor:pointer;margin:10px 0;padding:8px 15px}.collapsible-section{border:1px solid #edf2f4;border:1px solid var(--border-color);border-radius:8px;border-radius:var(--radius-md);margin-bottom:1.5rem;overflow:hidden}.section-header{align-items:center;background:#f8f9fa;background:var(--bg-color);cursor:pointer;display:flex;justify-content:space-between;padding:.75rem 1rem;-webkit-user-select:none;user-select:none}.section-header h5{margin:0}.toggle-icon{font-size:1.2rem;font-weight:700}.section-content{background:#fff;padding:1rem}.customer-list{border:1px solid #eee;border-radius:4px;margin-top:15px;padding:10px}.customer-list h4{color:#666;font-size:14px;margin-bottom:10px}.customer-buttons{display:flex;flex-wrap:wrap;gap:8px}.customer-button{align-items:center;background-color:#f0f7ff;border:1px solid #d0e3ff;border-radius:4px;color:#1890ff;cursor:pointer;display:inline-flex;font-size:13px;gap:4px;padding:6px 12px;position:relative;transition:all .3s}.customer-button .customer-id-hint{color:#8c8c8c;font-size:11px;font-weight:400}.customer-button:hover{background-color:#e6f7ff;border-color:#91d5ff}.no-residents{background-color:#f8f9fa;border:1px dashed #dee2e6;border-radius:4px;margin-bottom:20px;padding:15px;text-align:center}.customer-button.added{background-color:#e9ecef;color:#6c757d;cursor:not-allowed}.customer-button.added:hover{background-color:#e9ecef;border-color:#dee2e6}.error-message,.error-message-container{margin-bottom:1rem}.error-message ul{margin:.5rem 0 0;padding-left:1.5rem}.error-message li{margin-bottom:.3rem}.error-message{word-wrap:break-word;animation:fadeIn .3s ease-in;background:#fff5f5;border:1px solid #feb2b2;border-radius:8px;color:#e53e3e;font-weight:500;line-height:1.5;margin:.5rem 0;padding:1rem;scroll-margin-top:20px;z-index:1}.room-status-manage{background:var(--background-secondary);min-height:100vh;padding:var(--spacing-lg)}.display-switch{background:var(--background-primary);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);gap:var(--spacing-lg);margin-left:auto;padding:var(--spacing-sm) var(--spacing-md)}.display-switch,.switch-label{align-items:center;display:flex}.switch-label{border-radius:var(--radius-sm);color:var(--text-primary);cursor:pointer;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);gap:var(--spacing-sm);margin:0;padding:var(--spacing-xs) var(--spacing-sm);transition:var(--transition-normal)}.switch-label:hover{background:var(--background-hover);color:var(--primary-color)}.switch-label input[type=radio]{accent-color:var(--primary-color);margin:0;transform:scale(1.1)}.room-status-table{margin-top:var(--spacing-lg)}.main-record-row{background:linear-gradient(135deg,var(--background-primary) 0,var(--primary-50) 100%);border-left:4px solid var(--primary-color);font-weight:var(--font-weight-semibold);position:relative}.main-record-row:before{background:var(--gradient-primary);border-radius:0 var(--radius-sm) var(--radius-sm) 0;bottom:0;content:"";left:0;position:absolute;top:0;width:3px}.main-record-row:hover{background:linear-gradient(135deg,var(--primary-50) 0,var(--primary-100) 100%);box-shadow:var(--shadow-md),var(--shadow-glow);transform:translateX(3px)}.sub-record-row{background:var(--background-secondary);border-left:2px solid var(--border-color);color:var(--text-secondary);font-size:var(--font-size-sm);position:relative}.sub-record-row:before{background:var(--border-dark);content:"";height:1px;left:-1px;position:absolute;top:50%;transform:translateY(-50%);width:8px}.sub-record-row:hover{background:var(--background-hover);border-left-color:var(--primary-color);transform:translateX(2px)}.selectable-row{cursor:pointer;transition:var(--transition-smooth)}.selectable-row:hover{background:var(--background-hover)!important;box-shadow:var(--shadow-sm);transform:translateX(2px)}.selectable-row.selected{background:linear-gradient(135deg,var(--info-50) 0,var(--info-100) 100%)!important;border-left-color:var(--info-color);box-shadow:var(--shadow-md)}.selectable-row.selected:before{background:var(--gradient-info)}.expand-btn{align-items:center;background:none;border:none;border-radius:var(--radius-sm);color:var(--primary-color);cursor:pointer;display:inline-flex;height:28px;justify-content:center;padding:var(--spacing-xs);transition:var(--transition-normal);width:28px}.expand-btn:hover{background:var(--primary-100);box-shadow:var(--shadow-sm);color:var(--primary-dark);transform:scale(1.1)}.expand-btn:active{transform:scale(.95)}.action-buttons{align-items:center;display:flex;flex-wrap:nowrap;gap:var(--spacing-sm);justify-content:center}.room-status-manage .table .action-buttons .btn-sm{border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);letter-spacing:.025em;line-height:1.2;min-width:70px;padding:.375rem .75rem}.room-status-manage .sub-record-row .action-buttons .btn-sm{font-size:var(--font-size-xs);min-width:60px;opacity:.9;padding:.25rem .5rem}.room-status-manage .sub-record-row .action-buttons .btn-sm:hover{opacity:1;transform:translateY(-1px)}.batch-toolbar{align-items:center;background:linear-gradient(135deg,var(--background-primary) 0,var(--primary-50) 100%);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-lg);overflow:hidden;padding:var(--spacing-md) var(--spacing-lg);position:relative}.batch-toolbar:before{background:var(--gradient-primary);content:"";height:3px;left:0;position:absolute;right:0;top:0}.status-badge{align-items:center;border-radius:var(--radius-full);box-shadow:var(--shadow-sm);display:inline-flex;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);justify-content:center;letter-spacing:.05em;min-width:80px;overflow:hidden;padding:.375rem .75rem;position:relative;text-transform:uppercase;transition:var(--transition-normal);white-space:nowrap}.status-badge:before{background:linear-gradient(90deg,#0000,#ffffff4d,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .6s;width:100%}.status-badge:hover:before{left:100%}.status-badge:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.status-badge.available{background:var(--gradient-success);color:var(--text-inverse)}.status-badge.occupied{background:var(--gradient-danger);color:var(--text-inverse)}.status-badge.reserved{background:var(--gradient-warning);color:var(--text-inverse)}.status-badge.maintenance{background:linear-gradient(135deg,var(--gray-500) 0,var(--gray-600) 100%);color:var(--text-inverse)}.status-badge.locked{background:var(--gradient-info);color:var(--text-inverse)}.pagination-wrapper{background:var(--background-primary);border:1px solid var(--border-color);border-radius:var(--radius-lg);justify-content:center;margin-top:var(--spacing-xl);padding:var(--spacing-lg) 0}.error-message,.pagination-wrapper{align-items:center;box-shadow:var(--shadow-sm);display:flex}.error-message{background:linear-gradient(135deg,var(--danger-50) 0,var(--danger-100) 100%);border:1px solid var(--danger-200);border-radius:var(--radius-md);color:var(--danger-dark);font-weight:var(--font-weight-medium);justify-content:space-between;margin:var(--spacing-lg) 0;overflow:hidden;padding:var(--spacing-md) var(--spacing-lg);position:relative}.error-message:before{background:var(--gradient-danger);bottom:0;content:"";left:0;position:absolute;top:0;width:4px}.loading-spinner{align-items:center;color:var(--text-secondary);display:flex;font-size:var(--font-size-sm);justify-content:center;padding:var(--spacing-xl)}.empty-state{background:var(--background-primary);border:2px dashed var(--border-color);border-radius:var(--radius-lg);color:var(--text-muted);font-size:var(--font-size-sm);margin:var(--spacing-lg) 0}@media (max-width:768px){.room-status-manage{padding:var(--spacing-md)}.batch-toolbar,.display-switch{flex-direction:column;gap:var(--spacing-sm)}.batch-toolbar{align-items:stretch}.action-buttons{flex-direction:column;gap:var(--spacing-xs)}.room-status-manage .table .action-buttons .btn-sm{font-size:var(--font-size-xs);min-width:100%}}@keyframes slideInFromLeft{0%{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:translateX(0)}}.main-record-row,.sub-record-row{animation:slideInFromLeft .3s ease-out}.priority-indicator{align-items:center;background:var(--gradient-primary);border-radius:var(--radius-full);box-shadow:var(--shadow-sm);color:var(--text-inverse);display:inline-flex;font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);height:24px;justify-content:center;margin-right:var(--spacing-sm);width:24px}.priority-indicator.high{background:var(--gradient-danger)}.priority-indicator.medium{background:var(--gradient-warning)}.priority-indicator.low{background:var(--gradient-info)}.pdf-viewer-container{display:flex;flex-direction:column;height:100%;width:100%}.pdf-iframe{border:1px solid #e2e8f0;border-radius:6px;height:95vh;width:100%}.pdf-error,.pdf-loading,.pdf-placeholder{color:#718096;padding:20px;text-align:center}.pdf-error{color:#f44336}.member-details-modal{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.member-info-card{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:1px solid #e2e8f0;border-radius:12px;margin-bottom:24px;overflow:hidden;padding:24px;position:relative}.member-info-card:before{background:linear-gradient(90deg,#10b981,#3b82f6,#8b5cf6);content:"";height:4px;left:0;position:absolute;right:0;top:0}.member-info-card h3{align-items:center;color:#1e293b;display:flex;font-size:1.25rem;font-weight:600;gap:8px;margin:0 0 20px}.member-info-card h3:before{content:"👤";font-size:1.1em}.member-info-list{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));list-style:none;margin:0;padding:0}.member-info-item{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:16px;position:relative;transition:all .2s ease}.member-info-item:hover{border-color:#10b981;box-shadow:0 4px 12px #10b9811a;transform:translateY(-1px)}.member-info-label{color:#475569;display:block;font-size:.875rem;font-weight:600;margin-bottom:4px}.member-info-value{color:#1e293b;font-size:.95rem;line-height:1.4;word-break:break-word}.member-info-item.full-width{grid-column:1/-1}.member-info-item.highlight{background:linear-gradient(135deg,#ecfdf5,#d1fae5);border-color:#10b981}.member-info-item.highlight .member-info-label{color:#065f46}.member-info-item.highlight .member-info-value{color:#047857;font-weight:500}.age-badge{align-items:center;background:#dbeafe;border-radius:6px;color:#1e40af;display:inline-flex;font-size:.875rem;font-weight:500;padding:4px 8px}.contact-info{background:linear-gradient(135deg,#fef3c7,#fde68a);border:1px solid #f59e0b;border-radius:8px;margin:8px 0;padding:12px}.contact-info .member-info-label{color:#92400e}.contact-info .member-info-value{color:#78350f;font-weight:500}.emergency-contact-section{background:linear-gradient(135deg,#fef2f2,#fecaca);border:1px solid #f87171;border-radius:8px;grid-column:1/-1;margin:16px 0;padding:16px}.emergency-contact-section h4{align-items:center;color:#991b1b;display:flex;font-size:1rem;font-weight:600;gap:8px;margin:0 0 12px}.emergency-contact-section h4:before{content:"🚨";font-size:1em}.emergency-contact-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.personal-info-section{background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border:1px solid #0ea5e9;border-radius:8px;grid-column:1/-1;margin:16px 0;padding:16px}.personal-info-section h4{align-items:center;color:#0c4a6e;display:flex;font-size:1rem;font-weight:600;gap:8px;margin:0 0 12px}.personal-info-section h4:before{content:"📋";font-size:1em}.personal-info-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.additional-info-section{background:linear-gradient(135deg,#f3e8ff,#e9d5ff);border:1px solid #a855f7;border-radius:8px;grid-column:1/-1;margin:16px 0;padding:16px}.additional-info-section h4{align-items:center;color:#6b21a8;display:flex;font-size:1rem;font-weight:600;gap:8px;margin:0 0 12px}.additional-info-section h4:before{content:"💭";font-size:1em}.additional-info-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.additional-info-item{background:#fff;border:1px solid #d8b4fe;border-radius:6px;padding:12px}.additional-info-item .member-info-label{color:#7c3aed;font-weight:600}.additional-info-item .member-info-value{color:#5b21b6;line-height:1.5;margin-top:4px}.modal-actions .btn{font-weight:500;min-width:80px;transition:all .2s ease}.modal-actions .btn:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-1px)}.additional-info-section,.emergency-contact-section,.member-info-item,.personal-info-section{animation:fadeInUp .3s ease-out}@media (max-width:768px){.additional-info-grid,.emergency-contact-grid,.member-info-list,.personal-info-grid{grid-template-columns:1fr}.member-info-card{padding:16px}.modal-actions{flex-direction:column}.modal-actions .btn{width:100%}}.important-info{background:linear-gradient(135deg,#fef3c7,#fde68a);border:1px solid #f59e0b;border-radius:6px;color:#92400e;font-weight:500;padding:8px 12px}.character-count{color:#6b7280;font-family:Courier New,monospace;font-family:var(--font-family-mono,"Courier New",monospace);font-size:.875rem;margin-top:4px;text-align:right}.character-count.warning{color:#f59e0b}.character-count.danger{color:#ef4444}.form-group .form-textarea{min-height:100px;resize:vertical}.member-search-container{position:relative}.member-search-input{border:2px solid #e5e7eb;border-radius:6px;font-size:14px;padding:8px 12px;transition:all .2s ease;width:100%}.member-search-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.member-dropdown{background:#fff;border:1px solid #e5e7eb;border-radius:6px;box-shadow:0 4px 6px -1px #0000001a;left:0;max-height:200px;overflow-y:auto;position:absolute;right:0;top:100%;z-index:1000}.member-dropdown-item{border-bottom:1px solid #f3f4f6;cursor:pointer;padding:10px 12px;transition:background-color .2s ease}.member-dropdown-item:hover{background-color:#f9fafb}.member-dropdown-item:last-child{border-bottom:none}.member-dropdown-item.selected{background-color:#eff6ff;color:#1d4ed8}.no-results{color:#6b7280;font-style:italic;padding:12px;text-align:center}.member-risk-details-modal{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;max-width:900px;width:90vw}.risk-info-card{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:1px solid #e2e8f0;border-radius:12px;margin-bottom:24px;overflow:hidden;padding:24px;position:relative}.risk-info-card:before{background:linear-gradient(90deg,#ef4444,#f97316,#eab308);content:"";height:4px;left:0;position:absolute;right:0;top:0}.risk-info-card h3{align-items:center;color:#1e293b;display:flex;font-size:1.25rem;font-weight:600;gap:8px;margin:0 0 20px}.risk-info-card h3:before{content:"📊";font-size:1.1em}.risk-info-list{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));list-style:none;margin:0;padding:0}.risk-info-item{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:16px;position:relative;transition:all .2s ease}.risk-info-item:hover{border-color:#f97316;box-shadow:0 4px 12px #f973161a;transform:translateY(-1px)}.risk-info-label{color:#475569;display:block;font-size:.875rem;font-weight:600;margin-bottom:4px}.risk-info-value{color:#1e293b;font-size:.95rem;line-height:1.4;word-break:break-word}.risk-info-item.full-width{grid-column:1/-1}.risk-info-item.highlight{background:linear-gradient(135deg,#fef3c7,#fde68a);border-color:#f59e0b}.risk-info-item.highlight .risk-info-label{color:#92400e}.risk-info-item.highlight .risk-info-value{color:#78350f;font-weight:500}.important-info{font-size:1rem;font-weight:600}.date-value{color:#6b7280;font-family:Courier New,monospace;font-size:.875rem}.empty-value{color:#9ca3af;font-style:italic}.risk-assessment-section{background:linear-gradient(135deg,#fef2f2,#fecaca);border:1px solid #f87171;border-radius:8px;margin:16px 0;padding:16px}.risk-assessment-section h4{align-items:center;color:#991b1b;display:flex;font-size:1rem;font-weight:600;gap:8px;margin:0 0 12px}.risk-assessment-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.risk-info-item.category-item{background:linear-gradient(135deg,#e0f2fe,#b3e5fc);border-color:#0ea5e9}.risk-category{align-items:center;color:#0c4a6e;display:flex;font-weight:600;gap:6px}.risk-info-item.assessment-item{background:linear-gradient(135deg,#f3e8ff,#e9d5ff);border-color:#a855f7}.risk-info-item.frequency-item{background:linear-gradient(135deg,#ecfdf5,#d1fae5);border-color:#10b981}.inspection-frequency{align-items:center;color:#065f46;display:flex;font-weight:600;gap:6px}.risk-assessment{border-radius:6px;font-size:.875rem;font-weight:700;letter-spacing:.5px}.risk-level-high{background:linear-gradient(135deg,#fee2e2,#fecaca);border:2px solid #ef4444;color:#991b1b}.risk-level-medium{background:linear-gradient(135deg,#fef3c7,#fde68a);border:2px solid #f59e0b;color:#92400e}.risk-level-low{background:linear-gradient(135deg,#dcfce7,#bbf7d0);border:2px solid #22c55e;color:#166534}.risk-level-unknown{background:linear-gradient(135deg,#f1f5f9,#e2e8f0);border:2px solid #94a3b8;color:#475569}.description-section{background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border:1px solid #0ea5e9;border-radius:8px;margin:16px 0;padding:16px}.description-section h4{align-items:center;color:#0c4a6e;display:flex;font-size:1rem;font-weight:600;gap:8px;margin:0 0 12px}.description-section h4:before{content:"📝";font-size:1em}.description-content{background:#fff;border:1px solid #e2e8f0;border-radius:6px;padding:16px}.description-text{line-height:1.6;white-space:pre-wrap;word-break:break-word}.recommendations-section{background:linear-gradient(135deg,#ecfdf5,#d1fae5);border:1px solid #10b981;border-radius:8px;margin:16px 0;padding:16px}.recommendations-section h4{align-items:center;color:#065f46;display:flex;font-size:1rem;font-weight:600;gap:8px;margin:0 0 12px}.recommendations-section h4:before{content:"💡";font-size:1em}.recommendations-content{background:#fff;border:1px solid #e2e8f0;border-radius:6px;padding:16px}.recommendations-text{line-height:1.6;white-space:pre-wrap;word-break:break-word}.operation-info-section{background:linear-gradient(135deg,#fafafa,#f4f4f5);border:1px solid #d4d4d8;border-radius:8px;margin:16px 0;padding:16px}.operation-info-section h4{align-items:center;color:#3f3f46;display:flex;font-size:1rem;font-weight:600;gap:8px;margin:0 0 12px}.operation-info-section h4:before{content:"👤";font-size:1em}.operation-info-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.inspection-management-section{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;margin-bottom:24px;padding:24px}.inspection-management-section h4{align-items:center;color:#1e293b;display:flex;font-size:1.1rem;font-weight:600;gap:8px;margin:0 0 20px}.medical-history-section{background:var(--background-primary);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);margin-bottom:var(--spacing-xl);padding:var(--spacing-xl)}.medical-history-section h4{align-items:center;color:var(--text-primary);display:flex;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);gap:var(--spacing-sm);margin:0 0 var(--spacing-lg) 0}.medical-history-content{margin-top:var(--spacing-md)}.medical-histories-list{display:flex;flex-direction:column;gap:var(--spacing-lg)}.medical-history-item{background:var(--background-primary);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-xs);padding:var(--spacing-lg);transition:all .2s ease}.medical-history-item:hover{border-color:var(--primary-color);box-shadow:var(--shadow-md);transform:translateY(-1px)}.medical-history-header{display:flex;flex-direction:column;gap:var(--spacing-md)}.medical-history-basic-info{grid-gap:var(--spacing-sm) var(--spacing-lg);background:var(--background-secondary);border-radius:var(--radius-sm);display:grid;gap:var(--spacing-sm) var(--spacing-lg);grid-template-columns:repeat(auto-fit,minmax(280px,1fr));padding:var(--spacing-md)}.medical-history-info-row{align-items:flex-start;display:flex;gap:var(--spacing-sm);min-height:24px}.medical-history-label{color:var(--text-secondary);flex-shrink:0;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);min-width:80px}.medical-history-value{color:var(--text-primary);font-size:var(--font-size-sm);line-height:var(--line-height-normal);word-break:break-word}.medical-history-value.status-稳定{background:var(--success-50);color:var(--success-color)}.medical-history-value.status-控制中,.medical-history-value.status-稳定{border-radius:var(--radius-sm);font-weight:var(--font-weight-medium);padding:2px 8px}.medical-history-value.status-控制中{background:var(--info-50);color:var(--info-color)}.medical-history-value.status-恶化{background:var(--danger-50);color:var(--danger-color)}.medical-history-value.status-康复,.medical-history-value.status-恶化{border-radius:var(--radius-sm);font-weight:var(--font-weight-medium);padding:2px 8px}.medical-history-value.status-康复{background:var(--success-50);color:var(--success-color)}.medical-history-value.status-观察中{background:var(--warning-50);color:var(--warning-color)}.medical-history-value.status-未知,.medical-history-value.status-观察中{border-radius:var(--radius-sm);font-weight:var(--font-weight-medium);padding:2px 8px}.medical-history-value.status-未知{background:var(--gray-100);color:var(--text-muted)}.medical-history-footer{gap:var(--spacing-md);padding:var(--spacing-sm) 0}.medical-history-actions,.medical-history-footer{align-items:center;display:flex;justify-content:flex-end}.medical-history-actions{flex-wrap:wrap;gap:var(--spacing-sm)}.medical-history-actions .member-risk-btn{align-items:center;border-radius:var(--radius-sm);display:flex;font-size:var(--font-size-xs);gap:4px;min-height:32px;padding:6px 12px;white-space:nowrap}.medication-toggle-section{display:flex;justify-content:flex-start;margin-right:auto}.medication-toggle-btn{align-items:center;background:var(--background-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--primary-color);cursor:pointer;display:flex;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);transition:all .2s ease}.medication-toggle-btn:hover{background:var(--primary-50);border-color:var(--primary-color);box-shadow:var(--shadow-sm);color:var(--primary-dark);transform:translateY(-1px)}.medical-history-remark{background:var(--background-tertiary);border-left:4px solid var(--info-color);border-radius:var(--radius-sm);display:flex;gap:var(--spacing-sm);margin-top:var(--spacing-md);padding:var(--spacing-md)}.medical-history-remark .medical-history-label{color:var(--info-color);font-weight:var(--font-weight-semibold)}.medication-records-section{border-top:1px solid var(--border-color);margin-top:var(--spacing-lg);padding-top:var(--spacing-lg)}.medication-records-section h6{align-items:center;color:var(--text-primary);display:flex;font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);gap:var(--spacing-sm);margin:0 0 var(--spacing-md) 0}.medication-records-section h6:before{content:"💊";font-size:1.1em}.medication-records-list{display:flex;flex-direction:column;gap:var(--spacing-md)}.medication-record-item{background:var(--background-secondary);border:1px solid var(--border-light);border-radius:var(--radius-sm);padding:var(--spacing-md);transition:all .2s ease}.medication-record-item:hover{border-color:var(--primary-200);box-shadow:var(--shadow-xs)}.medication-info-grid{grid-gap:var(--spacing-sm) var(--spacing-md);display:grid;gap:var(--spacing-sm) var(--spacing-md);grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.medication-info-item{align-items:flex-start;display:flex;gap:var(--spacing-sm);min-height:20px}.medication-label{color:var(--text-secondary);flex-shrink:0;font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);min-width:70px}.medication-value{color:var(--text-primary);font-size:var(--font-size-xs);line-height:var(--line-height-normal)}.medication-remark{background:var(--background-tertiary);border-left:3px solid var(--warning-color);border-radius:var(--radius-xs);display:flex;gap:var(--spacing-sm);margin-top:var(--spacing-sm);padding:var(--spacing-sm)}.medication-remark .medication-label{color:var(--warning-color);font-weight:var(--font-weight-semibold)}.medication-actions{border-top:1px solid var(--border-light);display:flex;gap:var(--spacing-xs);justify-content:flex-end;margin-top:var(--spacing-sm);padding-top:var(--spacing-sm)}.medication-actions .member-risk-btn{border-radius:var(--radius-xs);font-size:var(--font-size-xs);min-height:28px;padding:4px 8px}.medical-histories-toggle-section{border-top:1px solid var(--border-color);margin-top:var(--spacing-lg);padding-top:var(--spacing-md);text-align:center}.medical-histories-toggle-btn{align-items:center;background:var(--background-primary);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--primary-color);cursor:pointer;display:inline-flex;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-lg);transition:all .2s ease}.medical-histories-toggle-btn:hover{background:var(--primary-50);border-color:var(--primary-color);box-shadow:var(--shadow-sm);color:var(--primary-dark);transform:translateY(-1px)}.toggle-icon{font-size:.8em}.inspection-status-overview{border-bottom:1px solid #dee2e6;margin-bottom:24px;padding-bottom:20px}.inspection-status-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.inspection-records-subsection h5{border-left:3px solid #007bff;color:#6c757d;font-size:14px;font-weight:600;margin-bottom:12px;padding-left:8px}.member-risk-empty-records-message,.member-risk-error-message,.member-risk-loading-message{color:#64748b;font-style:italic;padding:20px;text-align:center}.member-risk-error-message{background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#dc2626}.member-risk-empty-records-message{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:8px}.inspection-records-list{display:flex;flex-direction:column;gap:16px;margin-right:-8px;max-height:500px;overflow-y:auto;padding-bottom:8px;padding-right:8px}.inspection-records-list::-webkit-scrollbar{width:6px}.inspection-records-list::-webkit-scrollbar-track{background:#f1f5f9;border-radius:3px}.inspection-records-list::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px;-webkit-transition:background .2s ease;transition:background .2s ease}.inspection-records-list::-webkit-scrollbar-thumb:hover{background:#94a3b8}.inspection-record-item{background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 1px 3px #0000001a;padding:16px;transition:all .2s ease}.inspection-record-item:hover{border-color:#cbd5e1;box-shadow:0 4px 6px #0000001a;transform:translateY(-1px)}.record-header{align-items:center;border-bottom:1px solid #f1f5f9;display:flex;justify-content:space-between;margin-bottom:12px;padding-bottom:8px}.record-date,.record-inspector{align-items:center;display:flex;gap:4px}.record-date-label,.record-inspector-label{color:#64748b;font-size:.875rem;font-weight:500}.record-date-value,.record-inspector-value{color:#1e293b;font-size:.875rem;font-weight:500}.record-content{margin-top:8px}.record-content-label{color:#64748b;font-size:.875rem;font-weight:500;margin-bottom:6px}.record-content-value{word-wrap:break-word;background:#f8fafc;border-left:3px solid #3b82f6;border-radius:6px;color:#374151;font-size:.9rem;line-height:1.5;padding:12px;white-space:pre-wrap}@media (max-width:768px){.record-header{align-items:flex-start;flex-direction:column;gap:8px}.inspection-record-item{padding:12px}.record-content-value{font-size:.85rem;padding:8px}.member-risk-details-modal{margin:10px;width:95vw}.operation-info-grid,.risk-assessment-grid,.risk-info-list{grid-template-columns:1fr}}.member-risk-required{color:#dc3545;margin-left:2px}.member-risk-form-control{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:8px 12px;transition:border-color .3s ease;width:100%}.member-risk-form-control:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40;outline:none}.member-risk-form-control.error{border-color:#dc3545}.member-risk-form-textarea{min-height:80px;resize:vertical}.member-risk-character-count{color:#6c757d;font-size:12px;margin-top:4px;text-align:right}.member-risk-error-text{color:#dc3545;font-size:12px;margin-top:4px}.member-risk-form-text{color:#6c757d;font-size:12px;margin-top:4px}.member-risk-error-message{background-color:#f8d7da;border:1px solid #f5c6cb;border-radius:4px;color:#721c24;margin-bottom:16px;padding:12px}.member-risk-modal-actions{background-color:#f8f9fa;display:flex;gap:12px;justify-content:flex-end}.member-risk-btn{border:none;border-radius:4px;cursor:pointer;font-size:14px;padding:8px 16px;transition:all .3s ease}.member-risk-btn:disabled{cursor:not-allowed;opacity:.6}.member-risk-btn-primary{background-color:#007bff;color:#fff}.member-risk-btn-primary:hover:not(:disabled){background-color:#0056b3}.member-risk-btn-secondary{background-color:#6c757d;color:#fff}.member-risk-btn-secondary:hover:not(:disabled){background-color:#545b62}.risk-category-badge{align-items:center;border-radius:12px;display:inline-flex;font-size:12px;font-weight:600;gap:4px;padding:4px 8px}.risk-a{background-color:#d4edda;color:#155724}.risk-b{background-color:#fff3cd;color:#856404}.risk-c{background-color:#f8d7da;color:#721c24}.risk-d{background-color:#f5c6cb;color:#721c24}.frequency-badge{background-color:#e9ecef;border-radius:12px;color:#495057;font-size:12px;font-weight:500;padding:4px 8px}@media (max-width:768px){.member-risk-form-control{font-size:16px}.member-risk-modal-actions{flex-direction:column-reverse}.member-risk-btn{width:100%}}.records-toggle-section{border-top:1px solid #e2e8f0;margin-top:16px;padding-top:12px;text-align:center}.records-toggle-btn{align-items:center;background:none;border:none;border-radius:6px;color:#3b82f6;cursor:pointer;display:inline-flex;font-size:14px;gap:8px;padding:8px 16px;transition:all .2s ease}.records-toggle-btn:hover{background-color:#eff6ff;color:#1d4ed8}.records-toggle-btn:focus{outline:2px solid #3b82f6;outline-offset:2px}.toggle-icon{font-size:12px;transition:transform .2s ease}@media (max-width:480px){.risk-info-card{padding:16px}.description-section,.operation-info-section,.recommendations-section,.risk-assessment-section{padding:12px}}.user-menu{position:relative}.user-name{align-items:center;border-radius:4px;color:#ecf0f1;cursor:pointer;display:flex;padding:5px 10px;transition:background-color .3s}.user-name:hover{background-color:#34495e}.user-icon{font-size:2em;margin-right:8px}.username-text{font-size:1em}.dropdown-menu{animation:fadeIn .3s;background-color:#34495e;border-radius:4px;box-shadow:0 2px 10px #0000001a;left:0;overflow:hidden;position:absolute;top:100%;width:180px;z-index:1001}.dropdown-menu button{background:none;border:none;color:#ecf0f1;cursor:pointer;display:block;padding:10px;text-align:left;transition:background-color .3s;width:100%}.dropdown-menu button:hover{background-color:#2980b9}.virtual-task-list-container{background:#fff;border:1px solid #e5e7eb;border-radius:8px;overflow:hidden;position:relative}.virtual-task-list-scroll{scrollbar-color:#cbd5e1 #f1f5f9;scrollbar-width:thin}.virtual-task-list-scroll::-webkit-scrollbar{width:6px}.virtual-task-list-scroll::-webkit-scrollbar-track{background:#f1f5f9;border-radius:3px}.virtual-task-list-scroll::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.virtual-task-list-scroll::-webkit-scrollbar-thumb:hover{background:#94a3b8}.virtual-task-list-content{position:relative}.virtual-task-item{align-items:center;background:#fff;border-bottom:1px solid #f3f4f6;cursor:pointer;display:flex;justify-content:space-between;padding:12px 16px;transition:background-color .15s ease}.virtual-task-item:hover{background-color:#f8fafc}.virtual-task-item:last-child{border-bottom:none}.task-name{color:#1f2937}.task-meta{color:#6b7280;gap:8px}.task-time{color:#9ca3af}.task-process{background:#f3f4f6;color:#4b5563}.task-arrow{color:#9ca3af;flex-shrink:0;margin-left:8px}.task-arrow svg{height:100%;width:100%}.virtual-task-list-loading{background:#f9fafb;border-top:1px solid #f3f4f6;color:#6b7280;font-size:14px;padding:16px}.virtual-task-list-empty,.virtual-task-list-loading{align-items:center;display:flex;justify-content:center}.virtual-task-list-empty{color:#9ca3af;flex-direction:column;padding:40px 20px;text-align:center}.virtual-task-list-empty-icon{height:48px;margin-bottom:12px;opacity:.5;width:48px}.virtual-task-list-empty-text{color:#6b7280;font-size:14px}@media (max-width:640px){.virtual-task-item{padding:10px 12px}.task-name{font-size:13px}.task-meta{font-size:11px}.task-process{font-size:10px;padding:1px 4px}}.notification-bell-container{display:inline-block;position:relative}.notification-bell{align-items:center;background-color:var(--background-primary);border:1px solid var(--border-color);border-radius:50%;color:var(--text-secondary);cursor:pointer;display:flex;height:40px;justify-content:center;position:relative;transition:all .2s ease;width:40px}.notification-bell:hover{background-color:var(--background-hover);border-color:var(--border-dark);box-shadow:0 4px 12px #0000001a;color:var(--text-primary);transform:translateY(-1px)}.notification-bell.has-notifications{background:var(--gradient-primary-soft);border-color:var(--primary-color);color:var(--primary-color)}.notification-bell.has-notifications:hover{background:var(--gradient-primary);border-color:var(--primary-dark);color:#fff}.notification-bell.disconnected{background-color:var(--warning-light);border-color:var(--warning-color);opacity:.6}.notification-bell.disconnected:hover{background-color:var(--warning-color);border-color:var(--warning-dark);color:#fff}.bell-icon{height:20px;transition:transform .2s ease;width:20px}.notification-bell:hover .bell-icon{transform:rotate(15deg)}.notification-bell.has-notifications .bell-icon{animation:bellRing 2s ease-in-out infinite}@keyframes bellRing{0%,50%,to{transform:rotate(0deg)}10%,30%{transform:rotate(10deg)}20%,40%{transform:rotate(-10deg)}}.notification-badge{align-items:center;animation:badgePulse 2s ease-in-out infinite;background:var(--gradient-danger);border:2px solid var(--background-primary);border-radius:9px;box-shadow:0 2px 4px #dc26264d;color:#fff;display:flex;font-size:11px;font-weight:600;height:18px;justify-content:center;min-width:18px;padding:0 4px;position:absolute;right:-2px;top:-2px}@keyframes badgePulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.notification-dropdown{animation:dropdownSlideIn .2s ease-out;background:var(--background-primary);border:1px solid var(--border-color);border-radius:12px;box-shadow:0 10px 40px #0000001a,0 4px 16px #00000014;max-height:480px;overflow:hidden;position:absolute;right:0;top:calc(100% + 8px);width:360px;z-index:1000}@keyframes dropdownSlideIn{0%{opacity:0;transform:translateY(-10px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.notification-header{align-items:center;background:var(--gradient-primary-soft);border-bottom:1px solid var(--border-light);display:flex;justify-content:space-between;padding:16px 20px}.notification-header h3{color:var(--text-primary);font-size:16px;font-weight:600;margin:0}.header-actions{gap:8px}.task-count-text{border-radius:12px;font-size:14px;font-weight:500;padding:4px 8px}.refresh-btn,.task-count-text{background:var(--background-primary);color:var(--text-secondary)}.refresh-btn{border-radius:6px;flex-shrink:0;height:32px;min-width:32px;padding:0;width:32px}.refresh-btn svg{flex-shrink:0;height:16px;width:16px}.refresh-btn:hover{background:var(--background-hover);color:var(--primary-color);transform:rotate(180deg)}.refresh-btn:active{transform:rotate(180deg) scale(.95)}.notification-content{max-height:320px;overflow-y:auto}.loading-state{color:var(--text-secondary);flex-direction:column;position:relative}.loading-state:before{animation:var(--animation-spin);border-top:2px solid var(--border-color);border:2px solid var(--border-color);border-radius:50%;border-top-color:var(--primary-color);content:"";height:24px;margin-bottom:12px;width:24px}.empty-icon{color:var(--success-color)}.task-list{padding:8px 4px}.task-item{align-items:center;border-bottom:1px solid var(--border-light);cursor:pointer;display:flex;justify-content:space-between;padding:12px 20px;transition:all .2s ease}.task-item:last-child{border-bottom:none}.task-item:hover{background:var(--background-hover);transform:translateX(4px)}.task-item:active{background:var(--background-active)}.task-info{flex:1 1;min-width:0}.task-name{color:var(--text-primary);font-size:14px;font-weight:500;margin-bottom:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-meta{color:var(--text-secondary);font-size:12px;gap:12px}.task-meta,.task-time{align-items:center;display:flex}.task-process{background:var(--background-tertiary);border-radius:4px;font-size:11px;font-weight:500;padding:2px 6px}.task-arrow{color:var(--text-muted);height:16px;transition:all .2s ease;width:16px}.task-item:hover .task-arrow{color:var(--primary-color);transform:translateX(2px)}.notification-footer{background:var(--background-secondary);border-top:1px solid var(--border-light);padding:12px 20px}.view-all-btn{background:var(--gradient-primary);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:all .2s ease;width:100%}.view-all-btn:hover{background:var(--gradient-primary-vibrant);box-shadow:0 4px 12px #2563eb4d;transform:translateY(-1px)}.view-all-btn:active{transform:translateY(0)}@media (max-width:768px){.notification-dropdown{left:50%;max-width:320px;right:auto;transform:translateX(-50%);width:calc(100vw - 32px)}.notification-header{padding:12px 16px}.notification-footer,.task-item{padding:10px 16px}}@media (max-width:480px){.notification-dropdown{left:50%;max-width:none;right:auto;transform:translateX(-50%);width:calc(100vw - 16px)}.notification-header h3{font-size:14px}.task-count-text{font-size:12px;padding:2px 6px}.task-name{font-size:13px}.task-meta{font-size:11px}}.notification-content::-webkit-scrollbar{width:4px}.notification-content::-webkit-scrollbar-track{background:var(--background-tertiary)}.notification-content::-webkit-scrollbar-thumb{background:var(--border-dark);border-radius:2px}.notification-content::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}.announcement-bell-container{display:inline-block;position:relative}.announcement-bell{align-items:center;background-color:initial;border:none;border-radius:50%;color:#6b7280;cursor:pointer;display:flex;height:40px;justify-content:center;position:relative;transition:all .2s ease;width:40px}.announcement-bell:hover{background-color:#f3f4f6;color:#374151}.announcement-bell.has-announcements{color:#f59e0b}.announcement-bell.has-announcements:hover{background-color:#fef3c7;color:#d97706}.announcement-bell-icon{height:20px;width:20px}.announcement-badge{background-color:#ef4444;border:2px solid #fff;border-radius:10px;box-shadow:0 1px 3px #0000001a;color:#fff;font-size:11px;font-weight:600;line-height:1;min-width:18px;padding:2px 6px;position:absolute;right:-2px;text-align:center;top:-2px}.announcement-dropdown{background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 10px 25px #0000001a;margin-top:8px;max-height:500px;overflow:hidden;position:absolute;right:0;top:100%;width:380px;z-index:1000}.announcement-header{align-items:center;background-color:#f9fafb;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:16px 20px}.announcement-header h3{color:#111827;font-size:16px;font-weight:600;margin:0}.header-actions{align-items:center;display:flex;gap:12px}.announcement-count-text{color:#6b7280;font-size:12px}.refresh-btn{align-items:center;background:#0000;border:none;border-radius:4px;color:#6b7280;cursor:pointer;display:flex;height:28px;justify-content:center;transition:all .2s ease;width:28px}.refresh-btn:hover{background-color:#e5e7eb;color:#374151}.announcement-content{max-height:400px;overflow-y:auto}.loading-state{color:#6b7280;font-size:14px}.empty-state,.loading-state{align-items:center;display:flex;justify-content:center;padding:40px 20px}.empty-state{flex-direction:column}.empty-icon{color:#d1d5db;height:48px;margin-bottom:12px;width:48px}.empty-state p{color:#6b7280;font-size:14px}.announcement-list{padding:8px 0}.announcement-item{align-items:flex-start;border-bottom:1px solid #f3f4f6;cursor:pointer;display:flex;padding:12px 20px;position:relative;transition:background-color .2s ease}.announcement-item:hover{background-color:#f9fafb}.announcement-item:last-child{border-bottom:none}.announcement-item.unread{background-color:#f0f8ff;border-left:3px solid #007bff}.announcement-item.unread:hover{background-color:#e6f3ff}.unread-indicator{background-color:#dc3545;border-radius:50%;display:inline-block;flex-shrink:0;height:8px;margin-right:8px;width:8px}.title-container{align-items:center;display:flex;flex:1 1}.announcement-info{flex:1 1;min-width:0}.announcement-title{align-items:center;color:#111827;display:flex;font-size:14px;font-weight:500;justify-content:space-between;line-height:1.4;margin-bottom:4px;width:100%}.announcement-title .title-container{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;flex:1 1;margin-right:8px;overflow:hidden}.priority-badge{border-radius:4px;display:inline-block;font-size:10px;font-weight:600;letter-spacing:.5px;padding:2px 6px;text-transform:uppercase}.priority-badge.low{background-color:#e0f2fe;color:#0277bd}.priority-badge.normal{background-color:#f3f4f6;color:#6b7280}.priority-badge.high{background-color:#fef3c7;color:#d97706}.priority-badge.urgent{background-color:#fee2e2;color:#dc2626}.announcement-meta{align-items:center;display:flex;gap:12px;margin-bottom:6px}.announcement-author,.announcement-time{color:#6b7280;font-size:12px}.announcement-author:before{color:#d1d5db;content:"•";margin-right:6px}.announcement-preview{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#6b7280;display:-webkit-box;font-size:13px;line-height:1.4;overflow:hidden;text-overflow:ellipsis}.announcement-arrow{align-items:center;color:#d1d5db;display:flex;margin-left:8px;transition:color .2s ease}.announcement-item:hover .announcement-arrow{color:#6b7280}.announcement-arrow svg{height:16px;width:16px}@media (max-width:480px){.announcement-dropdown{right:-20px;width:320px}.announcement-header{padding:12px 16px}.announcement-item{padding:10px 16px}}.announcement-content::-webkit-scrollbar{width:6px}.announcement-content::-webkit-scrollbar-track{background:#f1f5f9}.announcement-content::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.announcement-content::-webkit-scrollbar-thumb:hover{background:#94a3b8}.announcement-dropdown{animation:fadeIn .2s ease-out}.announcement-bell:focus,.refresh-btn:focus{outline:2px solid #3b82f6;outline-offset:2px}.announcement-detail-modal-overlay{align-items:center;animation:modalOverlayFadeIn .3s ease-out;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0009;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:var(--z-modal)}.announcement-detail-modal{animation:modalSlideIn .4s cubic-bezier(.16,1,.3,1);background:var(--background-primary);border:1px solid var(--border-light);border-radius:16px;box-shadow:0 25px 50px -12px #00000040,0 0 0 1px #ffffff1a;max-height:90vh;max-width:min(90vw,800px);overflow:hidden;position:relative;width:100%}.announcement-detail-modal-header{align-items:flex-start;background:linear-gradient(135deg,var(--background-primary) 0,var(--background-secondary) 100%);border-bottom:1px solid var(--border-light);display:flex;justify-content:space-between;padding:24px 32px 16px;position:-webkit-sticky;position:sticky;top:0;z-index:10}.announcement-detail-modal-title{color:var(--text-primary);flex:1 1;font-size:1.5rem;font-weight:600;letter-spacing:-.025em;margin:0 20px 0 0}.announcement-detail-close-btn{align-items:center;background:none;border:none;border-radius:50%;color:var(--text-secondary);cursor:pointer;display:flex;flex-shrink:0;font-size:18px;height:32px;justify-content:center;line-height:1;min-width:auto;padding:0;transition:all .2s ease;width:32px}.announcement-detail-close-btn:hover{background:var(--danger-color);color:#fff;transform:scale(1.1)}.header-content{display:flex;flex:1 1;flex-direction:column;gap:8px}.header-content h3{color:var(--text-primary);font-size:1.5rem;font-weight:600;line-height:1.3;margin:0}.header-badges{display:flex;flex-wrap:wrap;gap:8px}.announcement-detail-priority-badge,.announcement-detail-status-badge{border:1px solid #0000;border-radius:20px;box-shadow:0 1px 3px #0000001a;font-size:.75rem;font-weight:600;letter-spacing:.5px;padding:6px 14px;text-transform:uppercase;transition:all .2s ease}.announcement-detail-priority-badge:hover,.announcement-detail-status-badge:hover{box-shadow:0 2px 6px #00000026;transform:translateY(-1px)}.announcement-detail-status-badge.published{background:var(--success-100);border-color:var(--success-200);color:var(--success-700)}.announcement-detail-status-badge.draft{background:var(--warning-100);border-color:var(--warning-200);color:var(--warning-700)}.announcement-detail-status-badge.archived{background:var(--gray-100);border-color:var(--gray-200);color:var(--gray-700)}.announcement-detail-priority-badge.low{background:var(--blue-100);border-color:var(--blue-200);color:var(--blue-700)}.announcement-detail-priority-badge.normal{background:var(--gray-100);border-color:var(--gray-200);color:var(--gray-700)}.announcement-detail-priority-badge.high{background:var(--orange-100);border-color:var(--orange-200);color:var(--orange-700)}.announcement-detail-priority-badge.urgent{background:var(--danger-100);border-color:var(--danger-200);color:var(--danger-700)}.announcement-detail-modal-body{max-height:calc(90vh - 140px);overflow-y:auto;padding:24px 32px}.announcement-detail-primary-info{background:linear-gradient(135deg,#f8fafc,#e2e8f0);border:1px solid #e2e8f0;border-radius:12px;margin-bottom:20px;padding:16px;text-align:center}.announcement-detail-priority-highlight{align-items:center;display:flex;justify-content:center}.announcement-detail-priority-highlight .announcement-detail-priority-badge{border-radius:25px;box-shadow:0 4px 12px #00000026;font-size:16px;font-weight:600;letter-spacing:.5px;padding:12px 24px;text-transform:uppercase;transition:all .3s ease}.announcement-detail-priority-highlight .announcement-detail-priority-badge:hover{box-shadow:0 6px 20px #0003;transform:translateY(-2px)}.announcement-detail-secondary-info{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:20px}.announcement-detail-meta-toggle{background:#f1f5f9;border-radius:8px 8px 0 0;color:#64748b;cursor:pointer;font-size:14px;font-weight:500;list-style:none;outline:none;padding:12px 16px;transition:all .2s ease;-webkit-user-select:none;user-select:none}.announcement-detail-meta-toggle::-webkit-details-marker{display:none}.announcement-detail-meta-toggle:before{content:"▶";display:inline-block;margin-right:8px;transition:transform .2s ease}.announcement-detail-secondary-info[open] .announcement-detail-meta-toggle:before{transform:rotate(90deg)}.announcement-detail-meta-toggle:hover{background:#e2e8f0;color:#475569}.announcement-detail-meta-content{grid-gap:12px;border-top:1px solid #e2e8f0;display:grid;gap:12px;grid-template-columns:1fr 1fr;padding:16px}.announcement-detail-meta-item{display:flex;flex-direction:column;gap:4px}.announcement-detail-meta-label{color:#64748b;font-size:.75rem;font-weight:500;letter-spacing:.5px;text-transform:uppercase}.announcement-detail-meta-value{color:#334155;font-size:.875rem;font-weight:500}.announcement-detail-content{margin-bottom:24px}.announcement-detail-content h4{align-items:center;border-bottom:2px solid var(--primary-500);color:var(--text-primary);display:flex;font-size:1.125rem;font-weight:600;gap:8px;margin:0 0 16px;padding-bottom:8px}.announcement-detail-content h4:before{content:"📄";font-size:1rem}.announcement-detail-content-text{background:#fff;border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:0 1px 3px #0000000d;line-height:1.6;padding:var(--spacing-lg)}.announcement-detail-content-text p{word-wrap:break-word;color:var(--text-primary);line-height:1.6;margin:0 0 12px;white-space:pre-wrap}.announcement-detail-content-text p:last-child{margin-bottom:0}.no-content{color:var(--text-tertiary);font-style:italic;padding:20px;text-align:center}.announcement-detail-attachments{margin-bottom:24px}.announcement-detail-attachments h4{align-items:center;border-bottom:2px solid var(--primary-500);color:var(--text-primary);display:flex;font-size:1.125rem;font-weight:600;gap:8px;margin:0 0 16px;padding-bottom:8px}.announcement-detail-attachments h4:before{content:"📎";font-size:1rem}.announcement-detail-attachments-list{display:flex;flex-direction:column;gap:8px}.announcement-detail-attachment-item{align-items:center;background:#fff;border:1px solid var(--border-light);border-radius:8px;box-shadow:0 1px 3px #0000000d;display:flex;justify-content:space-between;padding:12px 16px;transition:all .2s ease}.announcement-detail-attachment-item:hover{border-color:var(--primary-200);box-shadow:0 2px 8px #0000001a;transform:translateY(-1px)}.announcement-detail-attachment-icon{font-size:1rem;margin-right:8px}.announcement-detail-attachment-info{display:flex;flex:1 1;flex-direction:column;gap:2px}.announcement-detail-attachment-name{color:var(--text-primary);font-size:.875rem;font-weight:500}.announcement-detail-attachment-size{color:var(--text-secondary);font-size:.75rem;font-weight:400}.announcement-detail-download-btn{background:var(--primary-50);border:1px solid var(--primary-200);border-radius:6px;color:var(--primary-500);font-size:.875rem;font-weight:600;padding:6px 12px;text-decoration:none;transition:all .2s ease}.announcement-detail-download-btn:hover{background:var(--primary-100);color:var(--primary-600);transform:translateY(-1px)}.announcement-detail-no-attachments{background:var(--background-secondary);border:1px dashed var(--border-light);border-radius:8px;color:var(--text-tertiary);font-style:italic;padding:20px;text-align:center}.announcement-detail-modal-footer{background:var(--background-secondary);border-top:1px solid var(--border-light);bottom:0;display:flex;gap:12px;justify-content:flex-end;padding:16px 32px 24px;position:-webkit-sticky;position:sticky}.announcement-detail-btn{align-items:center;border:none;border-radius:8px;box-shadow:0 1px 3px #0000001a;cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:500;gap:8px;height:40px;justify-content:center;min-width:100px;padding:10px 20px;text-decoration:none;transition:all .2s ease}.announcement-detail-btn:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-1px)}.announcement-detail-btn-secondary{background:var(--background-primary);border:1px solid var(--border-color);color:var(--text-primary)}.announcement-detail-btn-secondary:hover{background:var(--background-hover);border-color:var(--border-dark);color:var(--text-primary)}@media (max-width:768px){.announcement-detail-modal{margin:10px;max-height:calc(100vh - 20px)}.announcement-detail-modal-header{padding:16px}.announcement-detail-modal-title{font-size:1.25rem}.announcement-detail-meta-content{gap:12px;grid-template-columns:1fr}.announcement-detail-priority-highlight .announcement-detail-priority-badge{font-size:14px;padding:10px 20px}.announcement-detail-meta-toggle{font-size:13px;padding:10px 14px}.announcement-detail-attachment-item{align-items:flex-start;flex-direction:column;gap:8px}.announcement-detail-download-btn{align-self:flex-end}}.announcement-detail-modal-body::-webkit-scrollbar{width:6px}.announcement-detail-modal-body::-webkit-scrollbar-track{background:var(--gray-100)}.announcement-detail-modal-body::-webkit-scrollbar-thumb{background:var(--gray-300);border-radius:3px}.announcement-detail-modal-body::-webkit-scrollbar-thumb:hover{background:var(--gray-400)}.navbar{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--gray-800);border-bottom:1px solid var(--border-color);box-shadow:var(--shadow-lg);color:var(--gray-100);height:60px;justify-content:space-between;left:0;padding:var(--spacing-md) var(--spacing-xl);position:fixed;right:0;top:0;transition:var(--transition-normal);z-index:1000}.navbar,.navbar-left{align-items:center;display:flex}.navbar-left{gap:var(--spacing-lg)}.sidebar-toggle{align-items:center;background:none;border:none;border-radius:var(--radius-md);color:var(--gray-100);cursor:pointer;display:flex;font-size:1.25rem;height:40px;justify-content:center;padding:var(--spacing-sm);transition:var(--transition-normal);width:40px}.sidebar-toggle:hover{background:var(--gray-700);color:var(--primary-light);transform:scale(1.05)}.sidebar-toggle:active{transform:scale(.95)}.navbar-brand{align-items:center;display:flex;gap:var(--spacing-md)}.logo{filter:brightness(1.1);height:36px;transition:var(--transition-normal);width:auto}.logo:hover{filter:brightness(1.2);transform:scale(1.02)}.navbar-menu{gap:var(--spacing-lg)}.navbar-hide-btn,.navbar-menu{align-items:center;display:flex}.navbar-hide-btn{background:none;border:none;border-radius:var(--radius-md);color:var(--gray-300);cursor:pointer;font-size:1.1rem;height:36px;justify-content:center;padding:var(--spacing-sm);transition:var(--transition-normal);width:36px}.navbar-hide-btn:hover{background:var(--gray-700);color:var(--primary-light);transform:scale(1.05)}.navbar-hide-btn:active{transform:scale(.95)}.navbar-menu .notification-bell-container{margin-right:var(--spacing-sm)}.navbar-menu .notification-bell{background-color:var(--gray-700);border-color:var(--gray-600);color:var(--gray-300)}.navbar-menu .notification-bell:hover{background-color:var(--gray-600);border-color:var(--gray-500);color:var(--gray-100)}.navbar-menu .notification-bell.has-notifications{background:var(--gradient-primary);border-color:var(--primary-color);color:#fff}.navbar-menu .notification-bell.has-notifications:hover{background:var(--gradient-primary-vibrant);border-color:var(--primary-light)}@media (max-width:768px){.navbar{padding:var(--spacing-sm) var(--spacing-md)}.navbar-left{gap:var(--spacing-md)}.sidebar-toggle{font-size:1.1rem;height:36px;width:36px}.logo{height:32px}}@media (max-width:480px){.navbar{padding:var(--spacing-sm)}.navbar-left{gap:var(--spacing-sm)}.sidebar-toggle{font-size:1rem;height:32px;width:32px}.logo{height:28px}}.App{color:var(--text-primary);font-family:var(--font-family-sans)}.app-container{background:var(--background-secondary);display:flex;height:100vh;margin:0;overflow:hidden;padding-top:60px;position:relative}.app-container.navbar-hidden{padding-top:0}.app-container.navbar-hidden .sidebar,.app-container.navbar-hidden .sidebar-overlay{top:0}.navbar-show-btn{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--gray-800);border:none;border:1px solid var(--border-color);border-radius:var(--radius-full);box-shadow:var(--shadow-lg);color:var(--gray-100);cursor:pointer;display:flex;font-size:1.25rem;height:48px;justify-content:center;padding:var(--spacing-md);position:fixed;right:var(--spacing-md);top:var(--spacing-md);transition:var(--transition-normal);width:48px;z-index:1001}.navbar-show-btn:hover{background:var(--gray-700);box-shadow:var(--shadow-xl);color:var(--primary-light);transform:scale(1.1)}.navbar-show-btn:active{transform:scale(.95)}.app-container.mobile{overflow-x:hidden}.app-container.desktop{overflow:visible}.sidebar{-webkit-overflow-scrolling:touch;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--gray-800);border-right:1px solid var(--border-color);box-shadow:var(--shadow-lg);color:var(--gray-100);overflow-y:auto;padding:var(--spacing-lg);transform:translateX(0);transition:var(--transition-slow);width:250px;z-index:999}.sidebar,.sidebar-overlay{bottom:0;left:0;position:fixed;top:60px}.sidebar-overlay{animation:fadeIn .3s ease;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:var(--background-overlay);right:0;z-index:998}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@media (max-width:768px){.sidebar{font-size:14px;padding:var(--spacing-md);transform:translateX(-100%);transition:transform .3s ease;width:280px}.app-container.mobile .sidebar{transform:translateX(0)}.sidebar .menu-item{font-size:14px;padding:var(--spacing-sm) var(--spacing-md)}.sidebar .submenu li{font-size:13px;padding:var(--spacing-xs) var(--spacing-lg)}.main-content{margin-left:0!important;width:100%!important}}.sidebar ul{list-style:none;margin:0;padding:0}.sidebar li{margin:10px 0}.sidebar .menu-item{align-items:center;border-radius:var(--radius-md);cursor:pointer;display:flex;font-weight:var(--font-weight-medium);justify-content:space-between;margin-bottom:var(--spacing-xs);padding:var(--spacing-md);transition:var(--transition-normal)}.sidebar .menu-item:hover{background:var(--gray-700);box-shadow:var(--shadow-sm);transform:translateX(4px)}.sidebar .arrow{border:solid var(--gray-300);border-width:0 2px 2px 0;display:inline-block;padding:3px;transition:var(--transition-normal)}.sidebar .arrow.open{transform:rotate(45deg)}.sidebar .submenu{margin-top:10px;padding-left:20px}.sidebar .submenu li{margin:5px 0}.sidebar a{border-radius:var(--radius-md);color:var(--gray-300);display:block;font-weight:var(--font-weight-medium);overflow:hidden;padding:var(--spacing-md);position:relative;text-decoration:none}.sidebar a,.sidebar a:before{transition:var(--transition-normal)}.sidebar a:before{background:var(--primary-color);content:"";height:100%;left:0;position:absolute;top:0;transform:scaleY(0);width:3px}.sidebar a:hover{background:var(--gray-700);box-shadow:var(--shadow-sm);color:var(--gray-100);transform:translateX(4px)}.sidebar a:hover:before{transform:scaleY(1)}.sidebar a.active{background:var(--gradient-primary);box-shadow:var(--shadow-md);color:var(--text-inverse)}.sidebar a.active:before{transform:scaleY(1)}.content{background:var(--background-secondary);flex:1 1;margin-left:250px;min-height:calc(100vh - 60px);overflow:auto;padding:var(--spacing-xl);transition:var(--transition-slow);width:calc(100% - 250px)}.app-container.sidebar-closed .content{margin-left:0;width:100%}.design-system-demo{background:var(--background-secondary);margin:0 auto;max-width:1200px;min-height:100vh;padding:var(--spacing-xl)}.demo-header{background:var(--gradient-primary);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);color:var(--text-inverse);margin-bottom:var(--spacing-3xl);padding:var(--spacing-xl);text-align:center}.demo-title{font-size:var(--font-size-4xl);font-weight:var(--font-weight-bold);margin:0 0 var(--spacing-md) 0;text-shadow:0 2px 4px #0000001a}.demo-subtitle{font-size:var(--font-size-lg);font-weight:var(--font-weight-normal);margin:0;opacity:.9}.demo-tabs{background:var(--background-primary);border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);display:flex;flex-wrap:wrap;gap:var(--spacing-sm);margin-bottom:var(--spacing-xl);padding:var(--spacing-md)}.demo-tab{background:var(--background-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);overflow:hidden;padding:var(--spacing-md) var(--spacing-lg);position:relative;transition:var(--transition-normal)}.demo-tab:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s;width:100%}.demo-tab:hover{background:var(--background-hover);border-color:var(--primary-color);box-shadow:var(--shadow-md);color:var(--text-primary);transform:translateY(-2px)}.demo-tab:hover:before{left:100%}.demo-tab.active{background:var(--gradient-primary);border-color:var(--primary-color);box-shadow:var(--shadow-md);color:var(--text-inverse)}.demo-tab.active:before{display:none}.demo-content{background:var(--background-primary);border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);overflow:hidden}.demo-section{padding:var(--spacing-xl)}.demo-section h2{border-bottom:2px solid var(--border-light);color:var(--text-primary);font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);margin:0 0 var(--spacing-xl) 0;padding-bottom:var(--spacing-md);position:relative}.demo-section h2:after{background:var(--gradient-primary);border-radius:var(--radius-full);bottom:-2px;content:"";height:2px;left:0;position:absolute;width:60px}.demo-group{margin-bottom:var(--spacing-2xl)}.demo-group h3{background:linear-gradient(90deg,var(--primary-50) 0,#0000 100%);border-left:4px solid var(--primary-color);color:var(--text-primary);font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);margin:0 0 var(--spacing-lg) 0;padding:var(--spacing-md) 0;padding-left:var(--spacing-md)}.demo-buttons,.demo-status{display:flex;flex-wrap:wrap;gap:var(--spacing-md)}.demo-buttons,.demo-form,.demo-status{background:var(--background-secondary);border:1px solid var(--border-light);border-radius:var(--radius-md);padding:var(--spacing-lg)}.demo-form{max-width:500px}.demo-form .form-group:last-child{margin-bottom:0}.demo-form .form-group:last-child .btn{margin-right:var(--spacing-md)}.demo-form .form-group:last-child .btn:last-child{margin-right:0}.demo-cards{grid-gap:var(--spacing-lg);background:var(--background-secondary);border:1px solid var(--border-light);border-radius:var(--radius-md);display:grid;gap:var(--spacing-lg);grid-template-columns:repeat(auto-fit,minmax(300px,1fr));padding:var(--spacing-lg)}.stat-item{padding:var(--spacing-md);text-align:center}.stat-value{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);margin-bottom:var(--spacing-xs)}.stat-label{font-weight:var(--font-weight-medium)}.demo-utilities{background:var(--background-secondary);border:1px solid var(--border-light);border-radius:var(--radius-md);padding:var(--spacing-lg)}.demo-utilities>*{margin-bottom:var(--spacing-sm)}.demo-utilities>:last-child{margin-bottom:0}.demo-actions{background:var(--background-primary);border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);margin-top:var(--spacing-xl);padding:var(--spacing-lg);text-align:center}@media (max-width:1024px){.design-system-demo{padding:var(--spacing-lg)}.demo-title{font-size:var(--font-size-3xl)}.demo-cards{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}}.glass-demo-container,.glow-demo,.neumorphism-demo-container{margin-bottom:2rem}.text-white-75{color:#ffffffbf}.cursor-pointer{cursor:pointer;-webkit-user-select:none;user-select:none}.advanced-buttons{display:flex;flex-wrap:wrap;gap:1rem}.gradient-text-demo h2{font-weight:700;margin-bottom:1rem}.dark-mode-demo .card.dark-mode{background:var(--bg-dark);border:1px solid var(--border-dark);color:var(--text-dark)}.animation-demo>.row>div>div{transition:all var(--transition-smooth)}.animation-demo>.row>div>div:hover{transform:translateY(-2px)}@media (max-width:768px){.design-system-demo{padding:var(--spacing-md)}.demo-header{margin-bottom:var(--spacing-xl);padding:var(--spacing-lg)}.demo-title{font-size:var(--font-size-2xl)}.demo-subtitle{font-size:var(--font-size-base)}.demo-tabs{flex-direction:column}.demo-tab{text-align:center}.demo-section{padding:var(--spacing-lg)}.demo-section h2{font-size:var(--font-size-2xl)}.demo-group h3{font-size:var(--font-size-lg)}.demo-buttons,.demo-status{flex-direction:column}.demo-status{align-items:flex-start}.demo-cards{grid-template-columns:1fr}.demo-form{max-width:100%}.advanced-buttons{flex-direction:column}.gradient-text-demo h2{font-size:1.5rem}.glass-demo-container,.glow-demo,.neumorphism-demo-container{padding:1rem!important}}@media (max-width:480px){.design-system-demo{padding:var(--spacing-sm)}.demo-header{padding:var(--spacing-md)}.demo-title{font-size:var(--font-size-xl)}.demo-buttons,.demo-form,.demo-section,.demo-status,.demo-utilities{padding:var(--spacing-md)}}.demo-section{animation:fadeInUp .6s ease-out}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.demo-group{animation:slideInLeft .8s ease-out}@keyframes slideInLeft{0%{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:translateX(0)}}@media print{.demo-actions,.demo-tabs{display:none}.design-system-demo{padding:0}.demo-header{background:none!important;box-shadow:none!important;color:var(--text-primary)!important}.demo-content{border:1px solid var(--border-color)!important;box-shadow:none!important}}.announcement-list-container{background-color:#f5f5f5;min-height:100vh;padding:20px}.announcement-list-header{align-items:center;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:flex;justify-content:space-between;margin-bottom:20px;padding:20px}.announcement-list-title{color:#333;font-size:24px;font-weight:700;margin:0}.announcement-list-filters{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:flex;flex-wrap:wrap;gap:15px;margin-bottom:20px;padding:20px}.announcement-filter-group{display:flex;flex-direction:column;gap:5px}.announcement-filter-label{color:#666;font-size:14px;font-weight:500}.announcement-filter-select,.announcement-search-input{border:1px solid #ddd;border-radius:4px;font-size:14px;min-width:150px;padding:8px 12px}.announcement-filter-select:focus,.announcement-search-input:focus{border-color:#007bff;box-shadow:0 0 0 2px #007bff40;outline:none}.announcement-search-input{min-width:250px}.announcement-list-content{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;overflow:hidden}.announcement-list-item{border-bottom:1px solid #eee;padding:20px;transition:background-color .2s}.announcement-list-item:hover{background-color:#f8f9fa}.announcement-list-item:last-child{border-bottom:none}.announcement-item-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:10px}.announcement-item-title{color:#333;cursor:pointer;flex:1 1;font-size:18px;font-weight:600;margin:0}.announcement-item-title:hover{color:#007bff}.announcement-item-badges{align-items:center;display:flex;gap:8px}.announcement-priority-badge,.announcement-status-badge{border-radius:12px;font-size:12px;font-weight:500;padding:4px 8px;text-transform:uppercase}.announcement-status-badge.draft{background-color:#ffc107;color:#856404}.announcement-status-badge.published{background-color:#28a745;color:#fff}.announcement-status-badge.archived{background-color:#6c757d;color:#fff}.announcement-priority-badge.low{background-color:#e9ecef;color:#495057}.announcement-priority-badge.normal{background-color:#007bff;color:#fff}.announcement-priority-badge.high{background-color:#fd7e14;color:#fff}.announcement-priority-badge.urgent{background-color:#dc3545;color:#fff}.announcement-item-meta{color:#666;display:flex;font-size:14px;gap:20px;margin-bottom:10px}.announcement-item-content{color:#555;font-size:14px;line-height:1.5;margin-bottom:15px;max-height:60px;overflow:hidden;text-overflow:ellipsis}.announcement-item-actions{display:flex;gap:10px}.announcement-btn{align-items:center;border:none;border-radius:4px;cursor:pointer;display:inline-flex;font-size:14px;gap:5px;padding:6px 12px;text-decoration:none;transition:all .2s}.announcement-btn-primary{background-color:#007bff;color:#fff}.announcement-btn-primary:hover{background-color:#0056b3}.announcement-btn-success{background-color:#28a745;color:#fff}.announcement-btn-success:hover{background-color:#1e7e34}.announcement-btn-warning{background-color:#ffc107;color:#212529}.announcement-btn-warning:hover{background-color:#e0a800}.announcement-btn-danger{background-color:#dc3545;color:#fff}.announcement-btn-danger:hover{background-color:#c82333}.announcement-btn-secondary{background-color:#6c757d;color:#fff}.announcement-btn-secondary:hover{background-color:#545b62}.announcement-btn:disabled{cursor:not-allowed;opacity:.6}.announcement-pagination{align-items:center;background:#fff;border-top:1px solid #eee;display:flex;gap:10px;justify-content:center;padding:20px}.announcement-pagination-info{color:#666;font-size:14px}.announcement-pagination-controls{display:flex;gap:5px}.announcement-pagination-btn{background:#fff;border:1px solid #ddd;border-radius:4px;color:#333;cursor:pointer;padding:8px 12px;transition:all .2s}.announcement-pagination-btn:hover:not(:disabled){background-color:#f8f9fa;border-color:#007bff}.announcement-pagination-btn:disabled{cursor:not-allowed;opacity:.5}.announcement-pagination-btn.active{background-color:#007bff;border-color:#007bff;color:#fff}.announcement-loading,.announcement-no-data{color:#666;font-size:16px;padding:40px;text-align:center}.announcement-error{color:#dc3545;font-size:16px;padding:40px;text-align:center}@media (max-width:768px){.announcement-list-container{padding:10px}.announcement-list-header{align-items:stretch}.announcement-list-filters,.announcement-list-header{flex-direction:column;gap:15px}.announcement-filter-group{width:100%}.announcement-filter-select,.announcement-search-input{min-width:auto;width:100%}.announcement-item-header{flex-direction:column;gap:10px}.announcement-item-badges{justify-content:flex-start}.announcement-item-meta{flex-direction:column;gap:5px}.announcement-item-actions{flex-wrap:wrap}.announcement-pagination{flex-direction:column;gap:15px}}.announcement-modal-overlay{align-items:center;animation:modalOverlayFadeIn .3s ease-out;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0009;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:var(--z-modal)}.announcement-modal{animation:modalSlideIn .4s cubic-bezier(.16,1,.3,1);background:var(--background-primary);border:1px solid var(--border-light);border-radius:16px;box-shadow:0 25px 50px -12px #00000040,0 0 0 1px #ffffff1a;max-height:90vh;max-width:min(90vw,600px);overflow:hidden;position:relative;width:100%}.announcement-modal-header{align-items:center;background:linear-gradient(135deg,var(--background-primary) 0,var(--background-secondary) 100%);border-bottom:1px solid var(--border-light);display:flex;justify-content:space-between;padding:24px 32px 16px;position:-webkit-sticky;position:sticky;top:0;z-index:10}.announcement-modal-title{color:var(--text-primary);font-size:1.5rem;font-weight:600;letter-spacing:-.025em;margin:0}.announcement-close-btn{align-items:center;background:none;border:none;border-radius:50%;color:var(--text-secondary);cursor:pointer;display:flex;font-size:18px;height:32px;justify-content:center;line-height:1;min-width:auto;padding:0;transition:all .2s ease;width:32px}.announcement-close-btn:hover{background:var(--danger-color);color:#fff;transform:scale(1.1)}.announcement-modal-body{max-height:calc(90vh - 140px);overflow-y:auto;padding:24px 32px}.announcement-form-group{margin-bottom:var(--spacing-lg)}.announcement-form-row{grid-gap:var(--spacing-md);display:grid;gap:var(--spacing-md);grid-template-columns:1fr 1fr}.announcement-form-group label{color:var(--text-primary);display:block;font-size:.875rem;font-weight:500;margin-bottom:var(--spacing-xs)}.announcement-form-group input,.announcement-form-group select,.announcement-form-group textarea{background:var(--background-primary);border:1px solid var(--border-color);border-radius:var(--radius-sm);box-sizing:border-box;color:var(--text-primary);font-size:.875rem;padding:var(--spacing-sm) var(--spacing-md);transition:var(--transition);width:100%}.announcement-form-group input:focus,.announcement-form-group select:focus,.announcement-form-group textarea:focus{border-color:var(--primary-500);box-shadow:0 0 0 3px var(--primary-100);outline:none}.announcement-form-group input.error,.announcement-form-group select.error,.announcement-form-group textarea.error{border-color:var(--danger-500)}.announcement-form-group input.error:focus,.announcement-form-group select.error:focus,.announcement-form-group textarea.error:focus{box-shadow:0 0 0 3px var(--danger-100)}.announcement-form-group textarea{font-family:inherit;line-height:1.5;min-height:120px;resize:vertical}.announcement-char-count{color:var(--text-tertiary);font-size:.75rem;margin-top:var(--spacing-xs);text-align:right}.announcement-error-text{color:var(--danger-500)}.announcement-error-text,.announcement-help-text{display:block;font-size:.75rem;margin-top:var(--spacing-xs)}.announcement-help-text{color:var(--text-tertiary)}.announcement-error-message{background:var(--danger-50);border:1px solid var(--danger-200);border-radius:var(--radius-md);color:var(--danger-700);margin-bottom:var(--spacing-lg);padding:var(--spacing-md)}.announcement-error-message p{font-size:.875rem;margin:0}.announcement-modal-footer{background:var(--background-secondary);border-top:1px solid var(--border-light);bottom:0;display:flex;gap:12px;justify-content:flex-end;padding:16px 32px 24px;position:-webkit-sticky;position:sticky}.announcement-modal-btn{align-items:center;border:none;border-radius:8px;box-shadow:0 1px 3px #0000001a;cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:500;gap:8px;height:40px;justify-content:center;min-width:100px;padding:10px 20px;text-decoration:none;transition:all .2s ease}.announcement-modal-btn:disabled{cursor:not-allowed;opacity:.6;transform:none}.announcement-modal-btn:hover:not(:disabled){box-shadow:0 4px 12px #00000026;transform:translateY(-1px)}.announcement-modal-btn-primary{background:linear-gradient(135deg,var(--primary-color) 0,var(--primary-light) 100%);border:1px solid var(--primary-color);color:#fff}.announcement-modal-btn-primary:hover:not(:disabled){background:linear-gradient(135deg,var(--primary-dark) 0,var(--primary-color) 100%);border-color:var(--primary-dark)}.announcement-modal-btn-secondary{background:var(--background-primary);border:1px solid var(--border-color);color:var(--text-primary)}.announcement-modal-btn-secondary:hover:not(:disabled){background:var(--background-hover);border-color:var(--border-dark);color:var(--text-primary)}@keyframes modalOverlayFadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-30px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}@media (max-width:768px){.announcement-modal{border-radius:12px;margin:16px;max-width:calc(100vw - 32px)}.announcement-modal-header{padding:16px 20px 12px}.announcement-modal-title{font-size:1.25rem}.announcement-modal-body{padding:16px 20px}.announcement-form-row{grid-template-columns:1fr}.announcement-modal-footer{flex-direction:column;padding:12px 20px 16px}.announcement-modal-btn{margin-bottom:8px;width:100%}.announcement-modal-btn:last-child{margin-bottom:0}}.modal-content::-webkit-scrollbar{width:6px}.modal-content::-webkit-scrollbar-track{background:var(--gray-100)}.modal-content::-webkit-scrollbar-thumb{background:var(--gray-300);border-radius:3px}.modal-content::-webkit-scrollbar-thumb:hover{background:var(--gray-400)}.announcement-file-upload{align-items:center;display:flex;gap:12px;margin-bottom:16px}.announcement-file-input{display:none}.announcement-file-label{align-items:center;background:var(--primary-color);border:none;border-radius:6px;color:#fff;cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:500;padding:8px 16px;transition:all .2s ease}.announcement-file-label:hover{background:var(--primary-dark);transform:translateY(-1px)}.announcement-upload-btn{background:var(--success-color);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.875rem;font-weight:500;padding:8px 16px;transition:all .2s ease}.announcement-upload-btn:hover:not(:disabled){background:var(--success-dark);transform:translateY(-1px)}.announcement-upload-btn:disabled{background:var(--gray-400);cursor:not-allowed;transform:none}.announcement-attachments,.announcement-selected-files{background:var(--background-secondary);border:1px solid var(--border-light);border-radius:8px;margin-top:16px;padding:16px}.announcement-attachments h4,.announcement-selected-files h4{color:var(--text-secondary);font-size:.875rem;font-weight:600;margin:0 0 12px}.announcement-attachment-item,.announcement-file-item{align-items:center;border-bottom:1px solid var(--border-light);display:flex;justify-content:space-between;padding:8px 0}.announcement-attachment-item:last-child,.announcement-file-item:last-child{border-bottom:none}.announcement-attachment-name,.announcement-file-name{color:var(--text-primary);font-weight:500;margin-right:8px}.announcement-attachment-size,.announcement-file-size{color:var(--text-secondary);font-size:.875rem;margin-right:8px}.announcement-attachment-date{color:var(--text-secondary);font-size:.875rem;margin-left:auto;margin-right:12px}.announcement-attachment-info{align-items:center;display:flex;flex:1 1}.announcement-attachment-actions{display:flex;gap:8px}.announcement-attachment-download{background:var(--primary-color);border-radius:4px;color:#fff;font-size:.75rem;font-weight:500;padding:4px 8px;text-decoration:none;transition:all .2s ease}.announcement-attachment-download:hover{background:var(--primary-dark);transform:translateY(-1px)}.announcement-attachment-delete{background:var(--danger-color);border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.75rem;font-weight:500;padding:4px 8px;transition:all .2s ease}.announcement-attachment-delete:hover{background:var(--danger-dark);transform:translateY(-1px)}.announcement-file-notice{background:var(--warning-light);border:1px solid var(--warning-color);border-radius:6px;color:var(--warning-dark);margin-top:12px;padding:8px 12px}.announcement-file-notice small{font-size:.875rem}.process-management{background:var(--background-secondary);min-height:100vh;padding:var(--spacing-lg)}.process-management-header{background:var(--background-primary);border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);margin-bottom:var(--spacing-lg);padding:var(--spacing-lg)}.process-management-header h1{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,var(--primary-color) 0,var(--primary-dark) 100%);-webkit-background-clip:text;background-clip:text;color:var(--text-primary);font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);margin:0 0 var(--spacing-lg) 0}.tab-navigation{border-bottom:2px solid var(--border-light);display:flex;gap:var(--spacing-sm);padding-bottom:var(--spacing-sm)}.tab-btn{background:#0000;border:none;border-radius:var(--radius-md) var(--radius-md) 0 0;color:var(--text-secondary);cursor:pointer;font-size:var(--font-size-base);font-weight:var(--font-weight-medium);min-width:120px;padding:var(--spacing-md) var(--spacing-xl);position:relative;transition:var(--transition-normal)}.tab-btn:hover{background:var(--primary-50);color:var(--primary-color)}.tab-btn.active{background:var(--primary-100);color:var(--primary-color);font-weight:var(--font-weight-semibold)}.tab-btn.active:after{background:var(--gradient-primary);border-radius:var(--radius-sm) var(--radius-sm) 0 0;bottom:-2px;content:"";height:3px;left:0;position:absolute;right:0}.tab-content{background:var(--background-primary);border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);overflow:hidden}@media (max-width:768px){.process-management{padding:var(--spacing-md)}.process-management-header h1{font-size:var(--font-size-2xl);text-align:center}.tab-navigation{justify-content:center}.tab-btn{font-size:var(--font-size-sm);min-width:100px;padding:var(--spacing-sm) var(--spacing-lg)}}.process-detail-modal{max-height:90vh;max-width:1200px;width:100%}.process-detail-modal .modal-body{max-height:calc(90vh - 140px);overflow-y:auto}.process-basic-info{background:var(--background-secondary);border:1px solid var(--border-light);border-radius:var(--radius-md);margin-bottom:var(--spacing-lg);padding:var(--spacing-lg)}.info-grid{grid-gap:var(--spacing-md);display:grid;gap:var(--spacing-md);grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.info-item{align-items:center;display:flex;gap:var(--spacing-sm)}.info-item label{color:var(--text-secondary);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);min-width:80px}.info-item span{color:var(--text-primary);font-size:var(--font-size-sm);word-break:break-all}.detail-tabs{border-bottom:2px solid var(--border-light);display:flex;gap:var(--spacing-xs);margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-sm)}.detail-tabs .tab-btn{background:#0000;border:none;border-radius:var(--radius-md) var(--radius-md) 0 0;color:var(--text-secondary);cursor:pointer;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);min-width:100px;padding:var(--spacing-sm) var(--spacing-lg);position:relative;transition:var(--transition-normal)}.detail-tabs .tab-btn:hover{background:var(--primary-50);color:var(--primary-color)}.detail-tabs .tab-btn.active{background:var(--primary-100);color:var(--primary-color);font-weight:var(--font-weight-semibold)}.detail-tabs .tab-btn.active:after{background:var(--gradient-primary);border-radius:var(--radius-sm) var(--radius-sm) 0 0;bottom:-2px;content:"";height:2px;left:0;position:absolute;right:0}.diagram-section{min-height:400px}.diagram-error,.diagram-loading,.diagram-section{align-items:center;display:flex;justify-content:center}.diagram-error,.diagram-loading{color:var(--text-secondary);flex-direction:column;gap:var(--spacing-md)}.diagram-container{background:var(--background-primary);border:1px solid var(--border-light);border-radius:var(--radius-md);overflow:auto;padding:var(--spacing-md);text-align:center;width:100%}.process-diagram{border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);height:auto;max-width:100%}.history-section{min-height:400px}.empty-history{align-items:center;color:var(--text-secondary);display:flex;height:400px;justify-content:center}.empty-history p{font-size:var(--font-size-lg);margin:0}.history-timeline{padding-left:var(--spacing-xl);position:relative}.history-timeline:before{background:var(--border-color);bottom:0;content:"";left:15px;position:absolute;top:0;width:2px}.timeline-item{align-items:flex-start;display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-xl);position:relative}.timeline-item:last-child{margin-bottom:0}.timeline-marker{left:-27px;position:absolute;top:8px;z-index:1}.marker-dot{border:2px solid var(--background-primary);border-radius:50%;box-shadow:var(--shadow-sm);height:12px;width:12px}.marker-dot.status-completed{background:var(--success-color)}.marker-dot.status-pending{background:var(--warning-color)}.marker-dot.status-cancelled{background:var(--danger-color)}.timeline-content{background:var(--background-primary);border:1px solid var(--border-light);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);flex:1 1;padding:var(--spacing-lg)}.timeline-header{align-items:center;border-bottom:1px solid var(--border-light);display:flex;justify-content:space-between;margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-sm)}.timeline-header h4{color:var(--text-primary);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);margin:0}.timeline-details{flex-direction:column}.detail-row,.timeline-details{display:flex;gap:var(--spacing-sm)}.detail-row{align-items:flex-start}.detail-label{color:var(--text-secondary);flex-shrink:0;font-weight:var(--font-weight-medium);min-width:80px}.detail-label,.detail-value{font-size:var(--font-size-sm)}.detail-value{color:var(--text-primary);flex:1 1;word-break:break-word}.detail-value.comment{background:var(--background-secondary);border-left:3px solid var(--primary-color);border-radius:var(--radius-sm);font-style:italic;padding:var(--spacing-sm)}.detail-value.error{color:var(--danger-color);font-weight:var(--font-weight-medium)}@media (max-width:1024px){.process-detail-modal{max-width:95vw}.info-grid{grid-template-columns:1fr}.timeline-header{align-items:flex-start;flex-direction:column;gap:var(--spacing-sm)}}@media (max-width:768px){.process-detail-modal{margin:var(--spacing-sm);max-width:calc(100vw - 1rem)}.process-basic-info{padding:var(--spacing-md)}.info-item{align-items:flex-start;flex-direction:column;gap:var(--spacing-xs)}.info-item label{min-width:auto}.detail-tabs{justify-content:center}.detail-tabs .tab-btn{font-size:var(--font-size-xs);min-width:80px;padding:var(--spacing-sm) var(--spacing-md)}.history-timeline{padding-left:var(--spacing-lg)}.timeline-marker{left:-23px}.timeline-content{padding:var(--spacing-md)}.detail-row{flex-direction:column;gap:var(--spacing-xs)}.detail-label{min-width:auto}.diagram-container{padding:var(--spacing-sm)}}.submitted-processes{padding:var(--spacing-lg)}.submitted-processes-loading{align-items:center;color:var(--text-secondary);display:flex;flex-direction:column;justify-content:center;padding:var(--spacing-3xl)}.submitted-processes-loading .loading{margin-bottom:var(--spacing-md)}.search-group,.search-group .form-control{min-width:250px}.date-range{align-items:center;display:flex;gap:var(--spacing-sm)}.date-range span{color:var(--text-secondary);font-size:var(--font-size-sm)}.process-stats{border:1px solid var(--border-light);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);display:flex;gap:var(--spacing-xl);margin-bottom:var(--spacing-lg);padding:var(--spacing-md) var(--spacing-lg)}.process-list,.process-stats{background:var(--background-primary)}.process-list{border:1px solid var(--border-light);border-radius:var(--radius-lg);overflow:hidden}.process-list .table td:first-child,.process-list .table th:first-child{font-family:var(--font-family-mono);font-size:var(--font-size-xs);width:120px}.process-list .table td:nth-child(2),.process-list .table th:nth-child(2){width:150px}.process-list .table td:nth-child(3),.process-list .table th:nth-child(3){width:180px}.process-list .table td:nth-child(4),.process-list .table th:nth-child(4){width:160px}.process-list .table td:nth-child(5),.process-list .table th:nth-child(5){width:120px}.process-list .table td:nth-child(6),.process-list .table th:nth-child(6){width:150px}.process-list .table td:nth-child(7),.process-list .table th:nth-child(7){width:180px}@media (max-width:1024px){.filter-row{align-items:stretch;flex-direction:column}.filter-group,.filter-group .form-control,.search-group,.search-group .form-control{min-width:auto}.date-range{align-items:stretch;flex-direction:column}.process-stats{flex-direction:column;gap:var(--spacing-md)}}@media (max-width:768px){.filter-section,.submitted-processes{padding:var(--spacing-md)}.process-list .table{min-width:800px}.process-list .table td,.process-list .table th{font-size:var(--font-size-xs);padding:var(--spacing-sm) var(--spacing-xs)}.process-list .table td:first-child,.process-list .table th:first-child{width:100px}.process-list .table td:nth-child(2),.process-list .table th:nth-child(2){width:120px}.process-list .table td:nth-child(3),.process-list .table th:nth-child(3){width:140px}.process-list .table td:nth-child(4),.process-list .table th:nth-child(4){width:130px}.process-list .table td:nth-child(5),.process-list .table th:nth-child(5){width:100px}.process-list .table td:nth-child(6),.process-list .table th:nth-child(6){width:120px}.process-list .table td:nth-child(7),.process-list .table th:nth-child(7){width:150px}}.approval-modal-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.approval-modal-container{background-color:var(--background-color);border-radius:8px;box-shadow:0 2px 10px #0000001a;max-height:80vh;max-width:90%;overflow-y:auto;width:500px}.approval-modal-header{align-items:center;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;padding:16px 24px}.approval-modal-header h3{color:var(--text-primary);font-size:1.2rem;margin:0}.close-button{background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:1.5rem}.approval-modal-body{padding:24px}.approval-info{margin-bottom:20px}.approval-info p{color:var(--text-primary);margin:8px 0}.approval-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:20px}.approve-button,.reject-button{border:none;border-radius:4px;cursor:pointer;font-weight:500;padding:8px 16px}.approve-button{background-color:var(--success-color);color:#fff}.reject-button{background-color:var(--danger-color);color:#fff}.my-approvals{padding:var(--spacing-lg)}.my-approvals-loading{align-items:center;color:var(--text-secondary);display:flex;flex-direction:column;justify-content:center;padding:var(--spacing-3xl)}.my-approvals-loading .loading{margin-bottom:var(--spacing-md)}.sub-tab-navigation{border-bottom:2px solid var(--border-light);display:flex;gap:var(--spacing-xs);margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-sm)}.sub-tab-btn{align-items:center;background:#0000;border:none;border-radius:var(--radius-md) var(--radius-md) 0 0;color:var(--text-secondary);cursor:pointer;display:flex;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-lg);position:relative;transition:var(--transition-normal)}.sub-tab-btn:hover{background:var(--primary-50);color:var(--primary-color)}.sub-tab-btn.active{background:var(--primary-100);color:var(--primary-color);font-weight:var(--font-weight-semibold)}.sub-tab-btn.active:after{background:var(--gradient-primary);border-radius:var(--radius-sm) var(--radius-sm) 0 0;bottom:-2px;content:"";height:2px;left:0;position:absolute;right:0}.task-count{align-items:center;background:var(--danger-color);border-radius:var(--radius-full);color:var(--text-inverse);display:flex;font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);height:18px;justify-content:center;line-height:1;min-width:18px;padding:2px 6px}.filter-section{background:var(--background-secondary);border:1px solid var(--border-light);border-radius:var(--radius-lg);margin-bottom:var(--spacing-lg);padding:var(--spacing-lg)}.filter-row{align-items:flex-end;display:flex;flex-wrap:wrap;gap:var(--spacing-lg);margin-bottom:var(--spacing-md)}.filter-row:last-child{margin-bottom:0}.filter-group{display:flex;flex-direction:column;gap:var(--spacing-sm);min-width:150px}.filter-group label{color:var(--text-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.filter-group .form-control{min-width:150px}.search-group{flex:1 1}.search-group,.search-group .form-control{min-width:300px}.filter-actions{align-items:flex-end;display:flex;gap:var(--spacing-sm)}.task-stats{background:var(--background-primary);border:1px solid var(--border-light);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);display:flex;gap:var(--spacing-xl);margin-bottom:var(--spacing-lg);padding:var(--spacing-md) var(--spacing-lg)}.stat-item{align-items:center;display:flex;gap:var(--spacing-sm)}.stat-label{color:var(--text-secondary);font-size:var(--font-size-sm)}.stat-value{color:var(--primary-color);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold)}.task-list{background:var(--background-primary);border:1px solid var(--border-light);border-radius:var(--radius-lg);overflow:hidden}.empty-state{color:var(--text-secondary);padding:var(--spacing-3xl);text-align:center}.empty-state p{font-size:var(--font-size-lg);margin:0}.priority{align-items:center;border-radius:var(--radius-sm);display:inline-flex;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);justify-content:center;letter-spacing:.05em;line-height:1;min-width:50px;padding:.25rem .5rem;text-transform:uppercase}.priority-high{background:var(--danger-color);color:var(--text-inverse)}.priority-medium{background:var(--warning-color);color:var(--text-inverse)}.priority-low{background:var(--success-color);color:var(--text-inverse)}.task-list .table td:first-child,.task-list .table th:first-child{width:150px}.task-list .table td:nth-child(2),.task-list .table th:nth-child(2){width:180px}.task-list .table td:nth-child(3),.task-list .table th:nth-child(3){width:120px}.task-list .table td:nth-child(4),.task-list .table th:nth-child(4){font-family:var(--font-family-mono);font-size:var(--font-size-xs);width:150px}.task-list .table td:nth-child(5),.task-list .table th:nth-child(5){width:80px}.task-list .table td:nth-child(6),.task-list .table th:nth-child(6){width:100px}.task-list .table td:nth-child(7),.task-list .table th:nth-child(7){width:160px}.task-list .table td:nth-child(8),.task-list .table th:nth-child(8){width:180px}@media (max-width:1024px){.filter-row{align-items:stretch;flex-direction:column}.filter-group,.filter-group .form-control,.search-group,.search-group .form-control{min-width:auto}.task-stats{flex-direction:column;gap:var(--spacing-md)}}@media (max-width:768px){.my-approvals{padding:var(--spacing-md)}.sub-tab-navigation{justify-content:center}.sub-tab-btn{font-size:var(--font-size-xs);padding:var(--spacing-sm) var(--spacing-md)}.filter-section{padding:var(--spacing-md)}.task-list .table{min-width:900px}.task-list .table td,.task-list .table th{font-size:var(--font-size-xs);padding:var(--spacing-sm) var(--spacing-xs)}.task-list .table td:first-child,.task-list .table th:first-child{width:120px}.task-list .table td:nth-child(2),.task-list .table th:nth-child(2){width:140px}.task-list .table td:nth-child(3),.task-list .table th:nth-child(3){width:100px}.task-list .table td:nth-child(4),.task-list .table th:nth-child(4){width:120px}.task-list .table td:nth-child(5),.task-list .table th:nth-child(5){width:70px}.task-list .table td:nth-child(6),.task-list .table th:nth-child(6){width:80px}.task-list .table td:nth-child(7),.task-list .table th:nth-child(7){width:130px}.task-list .table td:nth-child(8),.task-list .table th:nth-child(8){width:150px}}
/*# sourceMappingURL=main.481b7575.css.map*/