@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap";:root{--toastify-color-light: #fff;--toastify-color-dark: #121212;--toastify-color-info: #3498db;--toastify-color-success: #07bc0c;--toastify-color-warning: #f1c40f;--toastify-color-error: #e74c3c;--toastify-color-transparent: rgba(255, 255, 255, .7);--toastify-icon-color-info: var(--toastify-color-info);--toastify-icon-color-success: var(--toastify-color-success);--toastify-icon-color-warning: var(--toastify-color-warning);--toastify-icon-color-error: var(--toastify-color-error);--toastify-toast-width: 320px;--toastify-toast-background: #fff;--toastify-toast-min-height: 64px;--toastify-toast-max-height: 800px;--toastify-font-family: sans-serif;--toastify-z-index: 9999;--toastify-text-color-light: #757575;--toastify-text-color-dark: #fff;--toastify-text-color-info: #fff;--toastify-text-color-success: #fff;--toastify-text-color-warning: #fff;--toastify-text-color-error: #fff;--toastify-spinner-color: #616161;--toastify-spinner-color-empty-area: #e0e0e0;--toastify-color-progress-light: linear-gradient( to right, #4cd964, #5ac8fa, #007aff, #34aadc, #5856d6, #ff2d55 );--toastify-color-progress-dark: #bb86fc;--toastify-color-progress-info: var(--toastify-color-info);--toastify-color-progress-success: var(--toastify-color-success);--toastify-color-progress-warning: var(--toastify-color-warning);--toastify-color-progress-error: var(--toastify-color-error)}.Toastify__toast-container{z-index:var(--toastify-z-index);-webkit-transform:translate3d(0,0,var(--toastify-z-index));position:fixed;padding:4px;width:var(--toastify-toast-width);box-sizing:border-box;color:#fff}.Toastify__toast-container--top-left{top:1em;left:1em}.Toastify__toast-container--top-center{top:1em;left:50%;transform:translate(-50%)}.Toastify__toast-container--top-right{top:1em;right:1em}.Toastify__toast-container--bottom-left{bottom:1em;left:1em}.Toastify__toast-container--bottom-center{bottom:1em;left:50%;transform:translate(-50%)}.Toastify__toast-container--bottom-right{bottom:1em;right:1em}@media only screen and (max-width : 480px){.Toastify__toast-container{width:100vw;padding:0;left:0;margin:0}.Toastify__toast-container--top-left,.Toastify__toast-container--top-center,.Toastify__toast-container--top-right{top:0;transform:translate(0)}.Toastify__toast-container--bottom-left,.Toastify__toast-container--bottom-center,.Toastify__toast-container--bottom-right{bottom:0;transform:translate(0)}.Toastify__toast-container--rtl{right:0;left:initial}}.Toastify__toast{position:relative;min-height:var(--toastify-toast-min-height);box-sizing:border-box;margin-bottom:1rem;padding:8px;border-radius:4px;box-shadow:0 1px 10px #0000001a,0 2px 15px #0000000d;display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between;max-height:var(--toastify-toast-max-height);overflow:hidden;font-family:var(--toastify-font-family);cursor:default;direction:ltr;z-index:0}.Toastify__toast--rtl{direction:rtl}.Toastify__toast--close-on-click{cursor:pointer}.Toastify__toast-body{margin:auto 0;-ms-flex:1 1 auto;flex:1 1 auto;padding:6px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}.Toastify__toast-body>div:last-child{word-break:break-word;-ms-flex:1;flex:1}.Toastify__toast-icon{-webkit-margin-end:10px;margin-inline-end:10px;width:20px;-ms-flex-negative:0;flex-shrink:0;display:-ms-flexbox;display:flex}.Toastify--animate{animation-fill-mode:both;animation-duration:.7s}.Toastify--animate-icon{animation-fill-mode:both;animation-duration:.3s}@media only screen and (max-width : 480px){.Toastify__toast{margin-bottom:0;border-radius:0}}.Toastify__toast-theme--dark{background:var(--toastify-color-dark);color:var(--toastify-text-color-dark)}.Toastify__toast-theme--light,.Toastify__toast-theme--colored.Toastify__toast--default{background:var(--toastify-color-light);color:var(--toastify-text-color-light)}.Toastify__toast-theme--colored.Toastify__toast--info{color:var(--toastify-text-color-info);background:var(--toastify-color-info)}.Toastify__toast-theme--colored.Toastify__toast--success{color:var(--toastify-text-color-success);background:var(--toastify-color-success)}.Toastify__toast-theme--colored.Toastify__toast--warning{color:var(--toastify-text-color-warning);background:var(--toastify-color-warning)}.Toastify__toast-theme--colored.Toastify__toast--error{color:var(--toastify-text-color-error);background:var(--toastify-color-error)}.Toastify__progress-bar-theme--light{background:var(--toastify-color-progress-light)}.Toastify__progress-bar-theme--dark{background:var(--toastify-color-progress-dark)}.Toastify__progress-bar--info{background:var(--toastify-color-progress-info)}.Toastify__progress-bar--success{background:var(--toastify-color-progress-success)}.Toastify__progress-bar--warning{background:var(--toastify-color-progress-warning)}.Toastify__progress-bar--error{background:var(--toastify-color-progress-error)}.Toastify__progress-bar-theme--colored.Toastify__progress-bar--info,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--success,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--warning,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--error{background:var(--toastify-color-transparent)}.Toastify__close-button{color:#fff;background:transparent;outline:none;border:none;padding:0;cursor:pointer;opacity:.7;transition:.3s ease;-ms-flex-item-align:start;align-self:flex-start}.Toastify__close-button--light{color:#000;opacity:.3}.Toastify__close-button>svg{fill:currentColor;height:16px;width:14px}.Toastify__close-button:hover,.Toastify__close-button:focus{opacity:1}@keyframes Toastify__trackProgress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.Toastify__progress-bar{position:absolute;bottom:0;left:0;width:100%;height:5px;z-index:var(--toastify-z-index);opacity:.7;transform-origin:left}.Toastify__progress-bar--animated{animation:Toastify__trackProgress linear 1 forwards}.Toastify__progress-bar--controlled{transition:transform .2s}.Toastify__progress-bar--rtl{right:0;left:initial;transform-origin:right}.Toastify__spinner{width:20px;height:20px;box-sizing:border-box;border:2px solid;border-radius:100%;border-color:var(--toastify-spinner-color-empty-area);border-right-color:var(--toastify-spinner-color);animation:Toastify__spin .65s linear infinite}@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,0,0)}to{opacity:0;transform:translate3d(2000px,0,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,0,0)}to{opacity:0;transform:translate3d(-2000px,0,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,-10px,0)}40%,45%{opacity:1;transform:translate3d(0,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,10px,0)}40%,45%{opacity:1;transform:translate3d(0,-20px,0)}to{opacity:0;transform:translate3d(0,2000px,0)}}.Toastify__bounce-enter--top-left,.Toastify__bounce-enter--bottom-left{animation-name:Toastify__bounceInLeft}.Toastify__bounce-enter--top-right,.Toastify__bounce-enter--bottom-right{animation-name:Toastify__bounceInRight}.Toastify__bounce-enter--top-center{animation-name:Toastify__bounceInDown}.Toastify__bounce-enter--bottom-center{animation-name:Toastify__bounceInUp}.Toastify__bounce-exit--top-left,.Toastify__bounce-exit--bottom-left{animation-name:Toastify__bounceOutLeft}.Toastify__bounce-exit--top-right,.Toastify__bounce-exit--bottom-right{animation-name:Toastify__bounceOutRight}.Toastify__bounce-exit--top-center{animation-name:Toastify__bounceOutUp}.Toastify__bounce-exit--bottom-center{animation-name:Toastify__bounceOutDown}@keyframes Toastify__zoomIn{0%{opacity:0;transform:scale3d(.3,.3,.3)}50%{opacity:1}}@keyframes Toastify__zoomOut{0%{opacity:1}50%{opacity:0;transform: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%{transform:perspective(400px) rotateX(90deg);animation-timing-function:ease-in;opacity:0}40%{transform:perspective(400px) rotateX(-20deg);animation-timing-function:ease-in}60%{transform:perspective(400px) rotateX(10deg);opacity:1}80%{transform:perspective(400px) rotateX(-5deg)}to{transform:perspective(400px)}}@keyframes Toastify__flipOut{0%{transform:perspective(400px)}30%{transform:perspective(400px) rotateX(-20deg);opacity:1}to{transform:perspective(400px) rotateX(90deg);opacity:0}}.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:translateZ(0)}}@keyframes Toastify__slideInLeft{0%{transform:translate3d(-110%,0,0);visibility:visible}to{transform:translateZ(0)}}@keyframes Toastify__slideInUp{0%{transform:translate3d(0,110%,0);visibility:visible}to{transform:translateZ(0)}}@keyframes Toastify__slideInDown{0%{transform:translate3d(0,-110%,0);visibility:visible}to{transform:translateZ(0)}}@keyframes Toastify__slideOutRight{0%{transform:translateZ(0)}to{visibility:hidden;transform:translate3d(110%,0,0)}}@keyframes Toastify__slideOutLeft{0%{transform:translateZ(0)}to{visibility:hidden;transform:translate3d(-110%,0,0)}}@keyframes Toastify__slideOutDown{0%{transform:translateZ(0)}to{visibility:hidden;transform:translate3d(0,500px,0)}}@keyframes Toastify__slideOutUp{0%{transform:translateZ(0)}to{visibility:hidden;transform:translate3d(0,-500px,0)}}.Toastify__slide-enter--top-left,.Toastify__slide-enter--bottom-left{animation-name:Toastify__slideInLeft}.Toastify__slide-enter--top-right,.Toastify__slide-enter--bottom-right{animation-name:Toastify__slideInRight}.Toastify__slide-enter--top-center{animation-name:Toastify__slideInDown}.Toastify__slide-enter--bottom-center{animation-name:Toastify__slideInUp}.Toastify__slide-exit--top-left,.Toastify__slide-exit--bottom-left{animation-name:Toastify__slideOutLeft}.Toastify__slide-exit--top-right,.Toastify__slide-exit--bottom-right{animation-name:Toastify__slideOutRight}.Toastify__slide-exit--top-center{animation-name:Toastify__slideOutUp}.Toastify__slide-exit--bottom-center{animation-name:Toastify__slideOutDown}@keyframes Toastify__spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.login-page{display:flex;min-height:100vh;background:var(--soft-gray)}.login-brand-panel{flex:0 0 46%;position:relative;display:flex;align-items:center;justify-content:center;background:linear-gradient(160deg,#0f172a,#1e3a5f 40%,#2a7de1);overflow:hidden;padding:3rem}.brand-content{position:relative;z-index:2;max-width:420px;color:#fff}.brand-logo{width:64px;height:64px;border-radius:18px;background:#ffffff1f;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.18);display:flex;align-items:center;justify-content:center;margin-bottom:2rem}.logo-icon{font-size:1.8rem}.brand-content h1{font-size:2rem;font-weight:800;letter-spacing:-.02em;line-height:1.15;margin-bottom:.75rem}.brand-tagline{font-size:1.05rem;color:#ffffffb3;line-height:1.55;margin-bottom:2.5rem}.feature-list{display:flex;flex-direction:column;gap:1.25rem}.feature-item{display:flex;align-items:flex-start;gap:.85rem}.feature-icon{width:40px;height:40px;border-radius:10px;background:#ffffff1a;border:1px solid rgba(255,255,255,.12);display:flex;align-items:center;justify-content:center;font-size:1.1rem;color:#10b981;flex-shrink:0}.feature-item div{display:flex;flex-direction:column}.feature-item strong{font-size:.92rem;font-weight:600;color:#fff}.feature-item span{font-size:.82rem;color:#ffffff8c;margin-top:.1rem}.brand-decor{position:absolute;border-radius:50%;pointer-events:none}.brand-decor-1{width:320px;height:320px;top:-80px;right:-60px;background:radial-gradient(circle,rgba(16,185,129,.2) 0%,transparent 70%)}.brand-decor-2{width:240px;height:240px;bottom:-40px;left:-60px;background:radial-gradient(circle,rgba(42,125,225,.25) 0%,transparent 70%)}.brand-decor-3{width:160px;height:160px;top:50%;left:60%;background:radial-gradient(circle,rgba(255,255,255,.04) 0%,transparent 70%)}.login-form-panel{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;position:relative}.sync-pill{position:absolute;top:1.5rem;right:1.5rem;display:flex;align-items:center;gap:.4rem;padding:.35rem .85rem;border-radius:20px;font-size:.75rem;font-weight:600;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.sync-pill.sync-online{background:#10b9811a;color:#059669;border:1px solid rgba(16,185,129,.2)}.sync-pill.sync-offline{background:#ef44441a;color:#dc2626;border:1px solid rgba(239,68,68,.2)}.sync-pill.sync-checking{background:#f59e0b1a;color:#d97706;border:1px solid rgba(245,158,11,.2);animation:pulse-glow 1.5s ease infinite}@keyframes pulse-glow{0%,to{opacity:1}50%{opacity:.6}}.login-card{width:100%;max-width:420px;background:var(--white);border-radius:20px;padding:2.5rem 2.25rem 2rem;box-shadow:0 4px 24px #0000000a,0 1px 3px #0000000f;border:1px solid var(--border)}.card-header{margin-bottom:2rem}.card-header h2{font-size:1.6rem;font-weight:800;color:var(--text-primary);letter-spacing:-.02em;margin-bottom:.3rem}.card-header p{font-size:.9rem;color:var(--text-secondary)}.login-form{display:flex;flex-direction:column;gap:1.25rem}.input-group label{display:block;font-size:.8rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:.4rem}.input-wrapper{position:relative;display:flex;align-items:center}.input-icon{position:absolute;left:.9rem;color:var(--text-light);font-size:1rem;pointer-events:none;transition:color .2s}.input-wrapper input{width:100%;padding:.75rem 1rem .75rem 2.6rem;border:1.5px solid var(--border);border-radius:12px;font-size:.95rem;color:var(--text-primary);background:var(--white);outline:none;transition:border-color .2s,box-shadow .2s}.input-wrapper input:focus{border-color:var(--blue);box-shadow:0 0 0 3px #2a7de11a}.input-wrapper input:focus~.input-icon,.input-wrapper:focus-within .input-icon{color:var(--blue)}.toggle-password{position:absolute;right:.75rem;background:none;border:none;font-size:.78rem;font-weight:600;color:var(--blue);cursor:pointer;padding:.25rem .4rem;border-radius:6px;transition:background .15s}.toggle-password:hover{background:#2a7de114}.btn-login{width:100%;padding:.85rem 1rem;background:linear-gradient(135deg,var(--blue) 0%,#1d6fd1 100%);color:#fff;font-weight:700;font-size:.95rem;border-radius:12px;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.5rem;margin-top:.5rem;transition:all .2s;box-shadow:0 4px 16px #2a7de140;position:relative;overflow:hidden}.btn-login:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,transparent 0%,rgba(255,255,255,.1) 100%);opacity:0;transition:opacity .2s}.btn-login:hover:before{opacity:1}.btn-login:hover{transform:translateY(-1px);box-shadow:0 6px 24px #2a7de159}.btn-login:active{transform:translateY(0)}.btn-login:disabled{opacity:.55;cursor:not-allowed;transform:none;box-shadow:none}.spinner{width:20px;height:20px;border:2.5px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite}.card-footer{text-align:center;margin-top:1.5rem;padding-top:1.25rem;border-top:1px solid var(--border)}.card-footer p{font-size:.88rem;color:var(--text-secondary)}.link-btn{background:none;border:none;color:var(--blue);font-weight:700;font-size:.88rem;cursor:pointer;padding:0;transition:color .15s}.sync-details{margin-top:1.5rem;padding:.85rem 1rem;background:var(--soft-gray);border-radius:12px;display:flex;flex-direction:column;gap:.45rem}.sync-detail-row{display:flex;align-items:center;gap:.5rem;font-size:.78rem;color:var(--text-secondary)}.sync-detail-row .sync-key{min-width:58px;font-weight:500}.sync-val-ok{color:#059669;font-weight:600;margin-left:auto}.sync-val-err{color:#dc2626;font-weight:600;margin-left:auto}.sync-val-neutral{color:var(--text-secondary);font-weight:500;margin-left:auto}.login-footer-text{margin-top:1.5rem;font-size:.78rem;color:var(--text-light)}@media (max-width: 900px){.login-page{flex-direction:column}.login-brand-panel{flex:none;padding:2.5rem 2rem 2rem;min-height:auto}.brand-content h1{font-size:1.5rem}.feature-list{display:none}.login-form-panel{padding:2rem 1.25rem}.sync-pill{top:1rem;right:1rem}}@media (max-width: 480px){.login-card{padding:2rem 1.5rem 1.5rem;border-radius:16px}.card-header h2{font-size:1.35rem}}.tally-invoice-container{font-family:Arial,Helvetica,sans-serif!important;color:#000;width:100%;max-width:100%;margin:0 auto;background:#fff;padding:10px;overflow-x:auto;-webkit-overflow-scrolling:touch}.tally-invoice-table{width:100%;border-collapse:collapse;border:1px solid #000;font-size:11px;line-height:1.3}.mobile-invoice-view{display:none}@media (max-width: 768px){.desktop-only{display:none!important}.mobile-invoice-view{display:block!important;font-size:14px;padding:5px}.m-header{text-align:center;border-bottom:2px solid #000;padding-bottom:10px;margin-bottom:15px}.m-header .m-title{font-size:18px;font-weight:700;letter-spacing:1px;margin-bottom:5px}.m-header h3{margin:0 0 5px;font-size:16px}.m-section{padding:10px 0;border-bottom:1px dashed #ccc}.m-section p{margin:4px 0}.m-subtitle{font-weight:700;color:#444;text-transform:uppercase;font-size:12px;margin-bottom:6px!important}.m-items{padding:10px 0;border-bottom:1px dashed #ccc}.m-item-card{background:#f9f9f9;padding:12px;border-radius:6px;margin-bottom:12px;border:1px solid #eee}.m-item-name{font-weight:700;margin-bottom:6px;font-size:15px;color:#111}.m-item-meta,.m-item-tax,.m-item-total{display:flex;justify-content:space-between;font-size:13px;margin-bottom:4px}.m-item-tax{color:#666}.m-item-total{font-weight:700;color:#000;margin-top:4px;padding-top:4px;border-top:1px dashed #ddd}.m-summary{padding:10px 0}.m-sum-row{display:flex;justify-content:space-between;margin-bottom:8px;font-size:14px}.m-total-row{font-weight:700;font-size:18px;border-top:2px solid #000;padding-top:8px;margin-top:6px}.m-words{font-style:italic;margin-top:20px;font-size:12px;text-align:center;color:#333}}.tally-invoice-table th,.tally-invoice-table td{border:1px solid #000;padding:3px 4px;vertical-align:top}.tally-text-right{text-align:right}.tally-text-center{text-align:center}.tally-text-bold{font-weight:700}.tally-cell-pad{padding:8px 10px!important}.tally-title{font-size:16px;padding:8px!important;letter-spacing:1px}.tally-business-name{font-size:16px;font-weight:700;margin-bottom:4px}.tally-split-header{display:flex;justify-content:space-between}.tally-item-row td{border-bottom:1px dashed #ccc!important;border-top:none!important;padding:6px 4px!important}.tally-empty-row td{height:80px;border-bottom:none!important;border-top:none!important}@media print{@page{size:auto;margin:10mm}body,html{background:#fff!important;margin:0!important;padding:0!important}.layout>aside,.page-header,.search-bar,.table-wrapper{display:none!important}.layout,.main-content,.invoices-page{display:block!important;position:static!important;padding:0!important;margin:0!important;width:100%!important}.modal-overlay{position:absolute!important;left:0!important;top:0!important;width:100%!important;height:auto!important;min-height:100%!important;display:block!important;background:#fff!important;padding:0!important;margin:0!important}.modal-box,.invoice-detail-modal{position:static!important;display:block!important;width:100%!important;max-width:100%!important;min-width:100%!important;margin:0!important;padding:0!important;border:none!important;border-radius:0!important;box-shadow:none!important;transform:none!important;-webkit-transform:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.invoice-detail-body{display:block!important;padding:0!important;margin:0!important}.modal-header,.detail-actions,.btn-close{display:none!important}#printable-invoice{position:relative!important;display:block!important;width:100%!important;max-width:100%!important;margin:0!important;padding:0!important}.tally-item-row{page-break-inside:avoid}.mobile-invoice-view{display:none!important}.desktop-only{display:table!important;width:100%!important}*{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}}.status-badge{padding:.2rem .7rem;border-radius:999px;font-size:.75rem;font-weight:600;text-transform:capitalize}.status-paid{background:#ecfdf5;color:#059669}.status-unpaid{background:#fef2f2;color:#dc2626}.status-partial{background:#fffbeb;color:#d97706}.status-cancelled{background:#f1f5f9;color:#64748b}.link-btn{background:none;color:var(--blue);font-weight:600;font-size:.85rem;cursor:pointer;transition:color .2s}.link-btn:hover{color:var(--blue-dark);text-decoration:underline}.td-total{font-weight:700}.invoice-detail{max-width:700px}.invoice-detail-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--border)}.invoice-meta{font-size:.85rem;color:var(--text-secondary)}.invoice-meta p{margin:.2rem 0}.detail-table{width:100%;border-collapse:collapse;margin:1rem 0;font-size:.88rem}.detail-table th{text-align:left;padding:.6rem .75rem;font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary);background:#f8fafc;border-bottom:1px solid var(--border)}.detail-table td{padding:.6rem .75rem;border-bottom:1px solid #f1f5f9}.invoice-totals{text-align:right;border-top:2px solid var(--border);padding-top:.75rem;margin-top:.5rem}.invoice-totals p{margin:.25rem 0;font-size:.92rem}.invoice-totals .grand-total{font-size:1.15rem;font-weight:700;color:var(--emerald)}.detail-actions{display:flex;gap:.75rem;margin-top:1.5rem;flex-wrap:wrap}.dashboard{padding:2rem 2.5rem;min-height:100vh}.dash-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem}.dash-header h2{font-size:1.85rem;font-weight:800;color:var(--text-primary);letter-spacing:-.03em}.dash-header .subtitle{color:var(--text-secondary);font-size:.92rem;margin-top:.15rem}.dash-date{background:var(--white);border:1px solid var(--border);padding:.5rem 1.1rem;border-radius:10px;font-weight:600;font-size:.85rem;color:var(--blue);box-shadow:var(--shadow);white-space:nowrap}.widget-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.25rem;margin-bottom:1.75rem}@media (max-width: 1100px){.widget-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 600px){.widget-grid{grid-template-columns:1fr}}.widget-card{background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border-radius:var(--radius-lg);padding:1.35rem 1.5rem;display:flex;align-items:center;gap:1.1rem;cursor:pointer;border:1px solid var(--border);box-shadow:var(--shadow);transition:transform .22s,box-shadow .22s;position:relative;overflow:hidden}.widget-card:before{content:"";position:absolute;top:0;left:0;bottom:0;width:4px;border-radius:4px 0 0 4px}.widget-sales:before{background:var(--blue)}.widget-pending:before{background:#f59e0b}.widget-stock:before{background:#ef4444}.widget-overdue:before{background:#06b6d4}.widget-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg)}.widget-icon{width:52px;height:52px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:1.4rem;color:var(--white);flex-shrink:0}.widget-sales .widget-icon{background:linear-gradient(135deg,#3b82f6,#2563eb)}.widget-pending .widget-icon{background:linear-gradient(135deg,#fbbf24,#f59e0b)}.widget-stock .widget-icon{background:linear-gradient(135deg,#f87171,#ef4444)}.widget-overdue .widget-icon{background:linear-gradient(135deg,#22d3ee,#06b6d4)}.widget-body{display:flex;flex-direction:column;min-width:0}.widget-label{font-size:.78rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em}.widget-value{font-size:1.55rem;font-weight:800;color:var(--text-primary);line-height:1.2;margin:.15rem 0}.widget-sub{font-size:.78rem;color:var(--text-light)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(165px,1fr));gap:1.25rem;margin-bottom:2rem}.stat-card{background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border-radius:var(--radius-lg);border:1px solid var(--glass-border);padding:1.25rem 1rem;text-align:center;box-shadow:var(--shadow);transition:transform .2s,box-shadow .2s;position:relative;overflow:hidden}.stat-card:after{content:"";position:absolute;bottom:0;left:15%;right:15%;height:3px;border-radius:3px 3px 0 0}.stat-card.blue:after{background:var(--blue)}.stat-card.purple:after{background:#8b5cf6}.stat-card.teal:after{background:#14b8a6}.stat-card.orange:after{background:#f97316}.stat-card.green:after{background:var(--emerald)}.stat-card.red:after{background:#ef4444}.stat-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.stat-card h3{margin:0 0 .35rem;font-size:.78rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em}.stat-value{font-size:1.65rem;font-weight:800;margin:0;line-height:1.2}.stat-card.blue .stat-value{color:var(--blue)}.stat-card.purple .stat-value{color:#7c3aed}.stat-card.teal .stat-value{color:#0d9488}.stat-card.orange .stat-value{color:#ea580c}.stat-card.green .stat-value{color:var(--emerald)}.stat-card.red .stat-value{color:#dc2626}.dash-panels{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}@media (max-width: 900px){.dash-panels{grid-template-columns:1fr}}.dash-panel{background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border-radius:var(--radius-lg);border:1px solid var(--glass-border);box-shadow:var(--shadow-md);padding:1.25rem 1.5rem;display:flex;flex-direction:column}.panel-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid var(--border)}.panel-header h3{font-size:1rem;font-weight:700;color:var(--text-primary);display:flex;align-items:center;gap:.5rem}.btn-link{background:none;border:none;color:var(--blue);font-weight:600;font-size:.82rem;cursor:pointer;padding:.3rem .6rem;border-radius:6px;transition:background .2s,color .2s}.btn-link:hover{background:#2a7de10f;color:var(--blue-dark)}.mini-table{width:100%;border-collapse:separate;border-spacing:0;font-size:.88rem}.mini-table thead th{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);padding:.5rem .6rem;background:#f8fafc;border-bottom:1px solid var(--border);text-align:left}.mini-table thead .th-right{text-align:right}.mini-table tbody td{padding:.6rem;border-bottom:1px solid #f1f5f9;color:var(--text-primary)}.mini-table tbody tr:last-child td{border-bottom:none}.mini-table tbody tr:hover td{background:#f8fafc}.mini-table .td-right{text-align:right}.mini-table .td-mono{font-family:JetBrains Mono,Fira Code,monospace;font-size:.82rem;color:var(--blue);font-weight:600}.mini-table .td-stock-low,.mini-table .td-amount-red{color:#dc2626;font-weight:700}.mini-table .td-date-overdue{color:#dc2626;font-weight:600;font-size:.82rem}.mini-table .row-critical td{background:#fef2f2}.mini-badge{display:inline-block;padding:.15rem .6rem;border-radius:999px;font-size:.72rem;font-weight:700;text-transform:capitalize;letter-spacing:.02em}.mini-paid{background:#ecfdf5;color:#059669}.mini-unpaid{background:#fef2f2;color:#dc2626}.mini-partial{background:#fffbeb;color:#d97706}.mini-cancelled{background:#f1f5f9;color:#64748b}.loading{text-align:center;padding:4rem;font-size:1.1rem;color:var(--text-secondary)}.page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem}.page-header h2{font-size:1.8rem;font-weight:800;letter-spacing:-.5px}.page-header .subtitle{color:var(--text-secondary);font-size:.95rem;margin-top:.25rem}.search-bar{position:relative;margin-bottom:1.75rem}.search-bar input{width:100%;padding:.85rem 1.25rem;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--white);font-size:.95rem;font-weight:500;transition:all var(--transition-fast);outline:none;box-shadow:var(--shadow-sm)}.search-bar input:focus{border-color:var(--blue);box-shadow:0 0 0 4px #4f46e526;transform:translateY(-1px)}.btn-clear{position:absolute;right:1rem;top:50%;transform:translateY(-50%);background:none;font-size:1.1rem;color:var(--text-light);transition:color var(--transition-fast);display:flex;align-items:center;justify-content:center;padding:.25rem;border-radius:50%}.btn-clear:hover{color:var(--danger);background:var(--danger-bg)}.table-wrapper{background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border-radius:var(--radius-xl);box-shadow:var(--shadow-md);overflow:hidden;border:1px solid var(--glass-border);animation:modalSlideUp .4s ease forwards}.data-table{width:100%;border-collapse:collapse}.data-table thead{background:#f8fafce6;border-bottom:2px solid var(--border)}.data-table th{text-align:left;padding:1rem 1.25rem;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary)}.data-table td{padding:1rem 1.25rem;border-bottom:1px solid #f1f5f9;font-size:.9rem;vertical-align:middle;color:var(--text-primary)}.data-table tbody tr{transition:all var(--transition-fast)}.data-table tbody tr:hover{background:#f8fafc99}.data-table tbody tr:last-child td{border-bottom:none}.td-name strong{display:block;font-weight:600;font-size:.95rem}.td-name .td-sub{display:block;font-size:.8rem;color:var(--text-secondary);margin-top:.15rem}.td-mono{font-family:JetBrains Mono,monospace;font-size:.85rem;color:var(--blue);font-weight:500}.td-actions{display:flex;gap:.4rem}.btn-icon{padding:.4rem .6rem;border-radius:var(--radius-sm);background:transparent;font-size:.9rem;font-weight:600;color:var(--text-secondary);transition:all var(--transition-fast);border:1px solid transparent}.btn-icon:hover{background:var(--soft-gray);color:var(--blue);border-color:var(--border);box-shadow:var(--shadow-sm)}.btn-icon.btn-delete:hover{background:var(--danger-bg);color:var(--danger);border-color:#fca5a5}.btn-icon.btn-pay{color:var(--emerald)}.btn-icon.btn-pay:hover{background:var(--success-bg);border-color:#6ee7b7;color:var(--emerald-dark)}.sync-badge{padding:.25rem .75rem;border-radius:var(--radius-full);font-size:.75rem;font-weight:700;white-space:nowrap;letter-spacing:.5px}.badge-synced{background:var(--success-bg);color:var(--emerald-dark)}.badge-pending{background:var(--warning-bg);color:#b45309}.badge-error{background:var(--danger-bg);color:var(--danger)}.empty-state{text-align:center;padding:4rem 2rem;color:var(--text-secondary);background:var(--white);border-radius:var(--radius-xl);border:1px dashed var(--border)}.empty-state p{margin-bottom:1.5rem;font-size:1.1rem;font-weight:500}.modal-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem}.confirm-box{max-width:450px;text-align:center}.confirm-box h3{margin-bottom:.75rem;font-size:1.4rem;color:var(--text-primary)}.confirm-box p{color:var(--text-secondary);font-size:.95rem;line-height:1.6}.confirm-box .modal-actions{justify-content:center}.pf-modal{max-width:640px!important;width:95%!important;max-height:92vh!important;padding:0!important;border-radius:20px!important;background:linear-gradient(135deg,#fffffff5,#f0f2f5fa)!important;border:1px solid rgba(255,255,255,.5);box-shadow:0 24px 80px #2a7de11a,0 8px 32px #00000014;overflow:hidden;display:flex;flex-direction:column}.pf-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.75rem;background:linear-gradient(135deg,var(--blue) 0%,#1a6fd4 100%);color:#fff}.pf-header-left{display:flex;align-items:center;gap:.85rem}.pf-header-icon{width:42px;height:42px;border-radius:12px;background:#ffffff2e;display:flex;align-items:center;justify-content:center;font-size:1.2rem}.pf-header h3{font-size:1.15rem;font-weight:700;margin:0}.pf-header p{font-size:.78rem;opacity:.75;margin:.1rem 0 0}.pf-header .btn-close{color:#ffffffb3;font-size:1.3rem;background:#ffffff1a;width:34px;height:34px;display:flex;align-items:center;justify-content:center;border-radius:8px;transition:all .2s}.pf-header .btn-close:hover{background:#ffffff40;color:#fff}.pf-form{flex:1;overflow-y:auto;padding:1.5rem 1.75rem 1.25rem}.pf-section{background:var(--white);border:1px solid var(--border);border-radius:14px;padding:1.25rem;margin-bottom:1rem}.pf-section-title{display:flex;align-items:center;gap:.4rem;font-size:.82rem;font-weight:700;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:1rem;padding-bottom:.6rem;border-bottom:1px solid var(--border)}.pf-section-title svg{font-size:.9rem;color:var(--blue)}.pf-section-pricing{background:#2a7de105;border-color:#2a7de11f}.pf-section-pricing .pf-section-title svg{color:#10b981}.pf-section-inventory{background:#f59e0b05;border-color:#f59e0b1f}.pf-section-inventory .pf-section-title svg{color:#f59e0b}.pf-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:.75rem}.pf-row:last-child{margin-bottom:0}.pf-row-3{grid-template-columns:1fr 1fr 1fr}.pf-field-2{grid-column:span 2}.pf-field label{display:block;font-size:.78rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.4px;margin-bottom:.4rem}.pf-field label .required{color:#ef4444}.pf-input-wrap{position:relative;display:flex;align-items:center}.pf-input-icon{position:absolute;left:.75rem;color:var(--text-light);font-size:.92rem;pointer-events:none;transition:color .2s}.pf-icon-text{font-style:normal;font-weight:700;font-size:.95rem}.pf-input-wrap input,.pf-input-wrap select{width:100%;padding:.65rem .85rem .65rem 2.3rem;border:1.5px solid var(--border);border-radius:10px;font-size:.92rem;color:var(--text-primary);background:var(--white);outline:none;transition:border-color .2s,box-shadow .2s;-webkit-appearance:none}.pf-input-wrap input:focus,.pf-input-wrap select:focus{border-color:var(--blue);box-shadow:0 0 0 3px #2a7de11a}.pf-input-wrap:focus-within .pf-input-icon{color:var(--blue)}.pf-computed-value{padding:.65rem .85rem;background:#10b9810f;border:1.5px solid rgba(16,185,129,.15);border-radius:10px;font-size:1rem;font-weight:700;color:#059669;letter-spacing:.02em}.pf-hint{display:block;font-size:.72rem;color:var(--text-light);margin-top:.3rem}.pf-field textarea{width:100%;padding:.65rem .85rem;border:1.5px solid var(--border);border-radius:10px;font-size:.92rem;color:var(--text-primary);background:var(--white);outline:none;resize:vertical;min-height:70px;transition:border-color .2s,box-shadow .2s}.pf-field textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px #2a7de11a}.pf-actions{display:flex;justify-content:flex-end;align-items:center;gap:.75rem;padding-top:1.25rem;margin-top:.5rem;border-top:1px solid var(--border)}.pf-btn-cancel{padding:.7rem 1.5rem;border-radius:10px;background:var(--white);color:var(--text-secondary);font-weight:600;font-size:.92rem;border:1.5px solid var(--border);transition:all .2s;cursor:pointer}.pf-btn-cancel:hover{background:var(--soft-gray);border-color:#cbd5e1}.pf-btn-submit{padding:.7rem 1.75rem;border-radius:10px;background:linear-gradient(135deg,var(--blue) 0%,#1a6fd4 100%);color:#fff;font-weight:700;font-size:.92rem;border:none;cursor:pointer;display:flex;align-items:center;gap:.45rem;box-shadow:0 4px 14px #2a7de14d;transition:all .2s;position:relative;overflow:hidden}.pf-btn-submit:hover{transform:translateY(-1px);box-shadow:0 6px 22px #2a7de166}.pf-btn-submit:disabled{opacity:.55;cursor:not-allowed;transform:none;box-shadow:none}.pf-spinner{width:18px;height:18px;border:2.5px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:pf-spin .7s linear infinite}@keyframes pf-spin{to{transform:rotate(360deg)}}.pf-form::-webkit-scrollbar{width:6px}.pf-form::-webkit-scrollbar-track{background:transparent}.pf-form::-webkit-scrollbar-thumb{background:#2a7de11f;border-radius:10px}.pf-form::-webkit-scrollbar-thumb:hover{background:#2a7de140}@media (max-width: 600px){.pf-modal{width:100%!important;max-height:100vh!important;border-radius:0!important}.pf-form{padding:1rem}.pf-row,.pf-row-3{grid-template-columns:1fr}.pf-field-2{grid-column:span 1}}.products-page{padding:2rem;background-color:var(--soft-gray)}.products-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.products-header h2{font-size:2rem;color:var(--blue);font-weight:600}.search-bar{position:relative}.search-bar input{padding:.75rem 1rem .75rem 2.5rem;border-radius:20px;border:1px solid #ced4da;background-color:#fff;transition:all .3s ease;box-shadow:0 2px 4px #0000000d}.search-bar input:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px #007bff1a}.search-icon{position:absolute;left:1rem;top:50%;transform:translateY(-50%);color:#6c757d}.add-product-btn{background-color:var(--blue);color:#fff;padding:.75rem 1.5rem;border:none;border-radius:20px;cursor:pointer;font-weight:500;display:flex;align-items:center;gap:.5rem;transition:background-color .3s ease;box-shadow:0 4px 12px #007bff33}.add-product-btn:hover{background-color:#0056b3}.products-table-container{background:#fff6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:15px;border:1px solid rgba(255,255,255,.2);padding:1.5rem;box-shadow:0 8px 32px #1f26871a}.products-table{width:100%;border-collapse:collapse}.products-table th,.products-table td{padding:1rem;text-align:left;border-bottom:1px solid rgba(255,255,255,.2)}.products-table th{color:var(--blue);font-weight:600;font-size:.9rem;text-transform:uppercase}.products-table tbody tr:last-child td{border-bottom:none}.products-table tbody tr:hover{background-color:#fff3}.actions-cell .btn-group{display:flex;gap:.5rem}.actions-cell button{border:none;background:none;cursor:pointer;font-size:1.2rem;color:#555;transition:color .3s ease}.actions-cell .edit-btn:hover{color:var(--blue)}.actions-cell .delete-btn:hover{color:#dc3545}.actions-cell .stock-add-btn:hover{color:var(--emerald)}.actions-cell .stock-remove-btn:hover{color:#ffc107}.invoice-form-modal{max-width:960px!important;width:94%!important;max-height:92vh!important;padding:0!important;border-radius:var(--radius-lg)!important;background:linear-gradient(135deg,#ffffffeb,#f0f2f5f5)!important;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.5);box-shadow:0 24px 80px #2a7de11a,0 8px 32px #00000014;overflow:hidden;display:flex;flex-direction:column}.invoice-form-modal .modal-header{background:linear-gradient(135deg,var(--blue) 0%,#1a6fd4 100%);color:var(--white);padding:1.25rem 2rem;margin-bottom:0;border-radius:0;display:flex;align-items:center;justify-content:space-between;flex-shrink:0}.invoice-form-modal .modal-header h3{font-size:1.35rem;font-weight:700;letter-spacing:-.02em;color:var(--white);display:flex;align-items:center;gap:.6rem}.invoice-form-modal .btn-close{color:#fffc;font-size:1.4rem;background:#ffffff1f;border-radius:50%;width:36px;height:36px;display:flex;align-items:center;justify-content:center;transition:all .2s}.invoice-form-modal .btn-close:hover{background:#ffffff40;color:#fff}.invoice-form-modal .invoice-form{padding:1.75rem 2rem 1.25rem;overflow-y:auto;flex:1}.invoice-form .section-title{font-size:.95rem;font-weight:700;color:var(--blue);text-transform:uppercase;letter-spacing:.06em;margin-bottom:.75rem;display:flex;align-items:center;gap:.5rem}.invoice-form .section-title .icon{font-size:1.1rem}.invoice-form .section-hint{font-weight:400;font-size:.8rem;color:var(--text-secondary);text-transform:none;letter-spacing:0}.invoice-form .form-section{margin-bottom:1.5rem;background:#ffffff8c;border:1px solid rgba(226,232,240,.6);border-radius:var(--radius);padding:1.25rem 1.5rem;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.invoice-form .form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1.25rem}.invoice-form .form-group{display:flex;flex-direction:column;position:relative}.invoice-form .form-group.customer-select-group{grid-column:1 / -1;max-width:420px}.invoice-form .form-group label{font-size:.8rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;margin-bottom:.4rem}.invoice-form .form-group input,.invoice-form .form-group select,.invoice-form .form-group textarea{padding:.65rem .9rem;border:1.5px solid var(--border);border-radius:10px;font-size:.95rem;color:var(--text-primary);background:var(--white);transition:border-color .2s,box-shadow .2s;outline:none}.invoice-form .form-group input:focus,.invoice-form .form-group select:focus,.invoice-form .form-group textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px #2a7de11a}.invoice-form .form-group textarea{resize:vertical;min-height:70px}.invoice-form .customer-search-wrapper{position:relative}.invoice-form .customer-dropdown{position:absolute;top:100%;left:0;right:0;background:var(--white);border:1px solid var(--border);border-radius:10px;box-shadow:0 12px 36px #0000001f;z-index:20;max-height:240px;overflow-y:auto;margin-top:4px}.invoice-form .dropdown-item{padding:.6rem 1rem;cursor:pointer;display:flex;flex-direction:column;transition:background .15s;border-bottom:1px solid #f1f5f9}.invoice-form .dropdown-item:last-child{border-bottom:none}.invoice-form .dropdown-item:hover,.invoice-form .dropdown-item.selected{background:#2a7de10f}.invoice-form .dropdown-item strong{font-size:.9rem;color:var(--text-primary)}.invoice-form .dropdown-sub{font-size:.78rem;color:var(--text-secondary)}.invoice-form .dropdown-empty{padding:.75rem 1rem;color:var(--text-light);font-size:.88rem}.invoice-form .items-table-wrapper{overflow-x:auto;margin:0 -.5rem}.invoice-form .items-table{width:100%;border-collapse:separate;border-spacing:0;font-size:.9rem}.invoice-form .items-table thead th{background:linear-gradient(135deg,#2a7de10f,#2a7de108);color:var(--blue);font-weight:700;font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;padding:.7rem .6rem;white-space:nowrap;border-bottom:2px solid rgba(42,125,225,.12)}.invoice-form .items-table thead th:first-child{border-radius:8px 0 0}.invoice-form .items-table thead th:last-child{border-radius:0 8px 0 0}.invoice-form .items-table tbody td{padding:.5rem;border-bottom:1px solid #f1f5f9;vertical-align:middle}.invoice-form .items-table tbody tr:last-child td{border-bottom:none}.invoice-form .items-table tbody tr:hover td{background:#2a7de105}.invoice-form .items-table select,.invoice-form .items-table input,.invoice-form .items-table .input-sm{padding:.5rem .6rem;border:1.5px solid var(--border);border-radius:8px;font-size:.88rem;color:var(--text-primary);background:var(--white);width:100%;transition:border-color .2s,box-shadow .2s;outline:none}.invoice-form .items-table select:focus,.invoice-form .items-table input:focus{border-color:var(--blue);box-shadow:0 0 0 3px #2a7de114}.invoice-form .td-computed{font-weight:600;color:var(--text-secondary);white-space:nowrap;text-align:right;font-size:.88rem}.invoice-form .td-amount{color:var(--text-primary);font-weight:700}.invoice-form .btn-remove-item{background:#ef444414;color:var(--danger);border:none;border-radius:50%;width:30px;height:30px;font-size:1rem;display:flex;align-items:center;justify-content:center;transition:all .2s;cursor:pointer}.invoice-form .btn-remove-item:hover{background:var(--danger);color:var(--white)}.invoice-form .btn-remove-item:disabled{opacity:.3;cursor:not-allowed}.invoice-form .btn-add-item{margin-top:.75rem;padding:.55rem 1.2rem;border:2px dashed rgba(42,125,225,.25);border-radius:10px;background:#2a7de108;color:var(--blue);font-weight:600;font-size:.88rem;transition:all .2s}.invoice-form .btn-add-item:hover{border-color:var(--blue);background:#2a7de10f}.invoice-form .totals-section{background:#2a7de108;border-color:#2a7de11a}.invoice-form .totals-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:start}.invoice-form .notes-group{min-width:0}.invoice-form .totals-panel{display:flex;flex-direction:column;gap:.25rem}.invoice-form .total-row{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;font-size:.95rem;color:var(--text-secondary)}.invoice-form .total-row .gst-highlight{color:var(--emerald);font-weight:600}.invoice-form .discount-row{border-top:1px dashed var(--border);padding-top:.6rem}.invoice-form .input-discount{width:110px;text-align:right;padding:.4rem .6rem;border:1.5px solid var(--border);border-radius:8px;font-size:.9rem;outline:none;transition:border-color .2s}.invoice-form .input-discount:focus{border-color:var(--blue)}.invoice-form .total-row.grand-total{border-top:2px solid var(--blue);margin-top:.5rem;padding-top:.75rem;font-size:1.3rem;font-weight:800;color:var(--blue)}.invoice-form .payment-section{background:#10b98108;border-color:#10b9811f}.invoice-form .payment-status-hint{font-size:.78rem;margin-top:.3rem;font-weight:500;color:var(--text-secondary);display:block}.invoice-form .payment-status-hint.credit-earned-hint{color:#059669;font-weight:600}.invoice-form .payment-status-hint.credit-applied-hint{color:#2563eb;font-weight:600}.credit-balance-banner{display:flex;align-items:flex-start;gap:.75rem;background:linear-gradient(135deg,#10b98114,#0596690d);border:1.5px solid rgba(16,185,129,.3);border-radius:12px;padding:.85rem 1.1rem;margin-bottom:1rem}.credit-balance-icon{font-size:1.5rem;flex-shrink:0;margin-top:2px}.credit-balance-banner strong{font-size:.95rem;font-weight:700;color:#065f46;display:block}.credit-balance-banner p{font-size:.78rem;color:#047857;margin:.2rem 0 0}.credit-balance-zero{display:flex;align-items:center;gap:.6rem;background:#f8fafc;border:1px solid var(--border);border-radius:8px;padding:.6rem 1rem;font-size:.83rem;color:var(--text-secondary);margin-bottom:1rem}.credit-balance-zero strong{color:var(--text-primary)}.upi-payment-section{margin-top:1rem;padding:1.25rem;background:#7c3aed0a;border:1px solid rgba(124,58,237,.12);border-radius:12px}.upi-payment-section .form-group select{width:100%;padding:.65rem .85rem;border:1px solid var(--border);border-radius:10px;font-size:.92rem;outline:none}.upi-payment-section .form-group select:focus{border-color:#7c3aed;box-shadow:0 0 0 3px #7c3aed1f}.qr-code-wrapper{display:flex;flex-direction:column;align-items:center;margin-top:1.25rem;padding:1.5rem;background:var(--white);border-radius:14px;border:1px solid var(--border);box-shadow:0 4px 16px #0000000a}.qr-label{font-size:.88rem;color:var(--text-secondary);margin-bottom:.75rem}.qr-label strong{color:var(--text-primary);font-weight:700}.qr-upi-id{margin-top:.75rem;font-size:.82rem;color:#7c3aed;font-weight:600;font-family:SF Mono,Fira Code,monospace;letter-spacing:.3px;background:#f3e8ff;padding:.3rem .75rem;border-radius:20px}.invoice-form-modal .modal-actions{display:flex;justify-content:flex-end;align-items:center;gap:.75rem;padding:1rem 2rem;background:linear-gradient(0deg,#f0f2f5,#fff9);border-top:1px solid var(--border);flex-shrink:0}.invoice-form-modal .modal-actions .btn-secondary{padding:.7rem 1.5rem;border-radius:10px;background:var(--white);color:var(--text-secondary);font-weight:600;font-size:.95rem;border:1.5px solid var(--border);transition:all .2s}.invoice-form-modal .modal-actions .btn-secondary:hover{background:var(--soft-gray);border-color:#cbd5e1}.invoice-form-modal .modal-actions .btn-primary{padding:.7rem 2rem;border-radius:10px;background:linear-gradient(135deg,var(--blue) 0%,#1a6fd4 100%);color:var(--white);font-weight:700;font-size:.95rem;letter-spacing:.02em;box-shadow:0 4px 14px #2a7de14d;transition:all .2s}.invoice-form-modal .modal-actions .btn-primary:hover{box-shadow:0 6px 22px #2a7de166;transform:translateY(-1px)}.invoice-form-modal .modal-actions .btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}.invoice-form-modal .invoice-form::-webkit-scrollbar{width:6px}.invoice-form-modal .invoice-form::-webkit-scrollbar-track{background:transparent}.invoice-form-modal .invoice-form::-webkit-scrollbar-thumb{background:#2a7de126;border-radius:10px}.invoice-form-modal .invoice-form::-webkit-scrollbar-thumb:hover{background:#2a7de14d}@media (max-width: 700px){.invoice-form-modal{width:100%!important;max-height:100vh!important;border-radius:0!important}.invoice-form-modal .invoice-form{padding:1rem}.invoice-form .totals-grid,.invoice-form .form-row{grid-template-columns:1fr}}.create-invoice-page{min-height:100%;background:#f8fafc;display:flex;flex-direction:column}.inv-page-header{background:linear-gradient(135deg,var(--blue) 0%,#1a6fd4 100%);color:var(--white);padding:1.25rem 2rem;flex-shrink:0;position:sticky;top:0;z-index:10;box-shadow:0 4px 20px #2a7de133}.inv-page-header-inner{display:flex;align-items:center;gap:1.5rem;max-width:1100px;margin:0 auto;width:100%}.btn-back{display:inline-flex;align-items:center;gap:.4rem;padding:.5rem 1rem;background:#ffffff26;color:var(--white);border:1px solid rgba(255,255,255,.3);border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap;flex-shrink:0}.btn-back:hover{background:#ffffff47;border-color:#ffffff80}.inv-page-title{font-size:1.4rem;font-weight:800;color:var(--white);margin:0;letter-spacing:-.02em}.inv-page-sub{font-size:.83rem;color:#ffffffbf;margin:.15rem 0 0}.inv-page-form{flex:1;padding:2rem;max-width:1100px;margin:0 auto;width:100%;box-sizing:border-box}.inv-page-actions{display:flex;justify-content:flex-end;align-items:center;gap:.75rem;padding:1.25rem 2rem;background:var(--white);border-top:1px solid var(--border);position:sticky;bottom:0;box-shadow:0 -4px 20px #0000000f}.inv-page-actions .btn-secondary{padding:.7rem 1.5rem;border-radius:10px;background:var(--white);color:var(--text-secondary);font-weight:600;font-size:.95rem;border:1.5px solid var(--border);transition:all .2s}.inv-page-actions .btn-secondary:hover{background:var(--soft-gray);border-color:#cbd5e1}.inv-page-actions .btn-primary{padding:.7rem 2rem;border-radius:10px;background:linear-gradient(135deg,var(--blue) 0%,#1a6fd4 100%);color:var(--white);font-weight:700;font-size:.95rem;letter-spacing:.02em;box-shadow:0 4px 14px #2a7de14d;transition:all .2s;border:none}.inv-page-actions .btn-primary:hover{box-shadow:0 6px 22px #2a7de166;transform:translateY(-1px)}.inv-page-actions .btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}@media (max-width: 700px){.inv-page-form,.inv-page-header,.inv-page-actions{padding:1rem}.invoice-form .totals-grid{grid-template-columns:1fr}}.ledger-page{animation:fadeIn .4s ease-out;padding:1rem 0}.animate-fade-in{animation:fadeIn .3s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.ledger-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;background:#fff;padding:1.5rem;border-radius:12px;box-shadow:0 1px 3px #0000000d;border:1px solid #e2e8f0}.header-titles h2{font-size:1.7rem;font-weight:700;color:#0f172a;margin:0 0 .5rem;letter-spacing:-.02em}.header-titles .subtitle{margin:0;font-size:.95rem;color:#64748b}.outstanding-badge{color:#ef4444;background:#fef2f2;padding:.2rem .6rem;border-radius:6px;font-size:1rem;font-weight:700;border:1px solid #fecaca;margin-left:.5rem}.btn-icon{width:1.1rem;height:1.1rem;margin-right:.5rem}.ledger-controls{background:#fff;padding:1rem;border-radius:12px;box-shadow:0 1px 3px #0000000d;border:1px solid #e2e8f0;margin-bottom:1.5rem}.ledger-tabs{display:flex;gap:.5rem;border-bottom:1px solid #e2e8f0;padding-bottom:.75rem;margin-bottom:1rem;overflow-x:auto}.tab-item{display:inline-flex;align-items:center;padding:.6rem 1.25rem;font-size:.9rem;font-weight:600;color:#64748b;background:transparent;border:none;border-radius:8px;cursor:pointer;transition:all .2s}.tab-item:hover{background:#f1f5f9;color:#334155}.tab-item.active{background:#f0fdf4;color:#16a34a}.tab-badge{background:#e2e8f0;color:#475569;font-size:.75rem;padding:.1rem .5rem;border-radius:99px;margin-left:.5rem}.tab-item.active .tab-badge{background:#16a34a;color:#fff}.filter-group{display:flex;flex-wrap:wrap;gap:1rem;align-items:center;justify-content:space-between}.search-box{position:relative;flex:1;min-width:250px}.input-icon-wrapper .input-icon{position:absolute;left:.75rem;top:50%;transform:translateY(-50%);width:1.25rem;height:1.25rem;color:#94a3b8}.search-box .input-field{width:100%;padding-left:2.5rem;padding-right:2.5rem}.clear-btn{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);background:transparent;border:none;color:#94a3b8;cursor:pointer;font-size:.8rem}.clear-btn:hover{color:#475569}.date-filters{display:flex;gap:1rem;align-items:center;flex-wrap:wrap}.date-input-group{display:flex;align-items:center;gap:.5rem}.date-input-group label{font-size:.85rem;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.05em}.input-field{padding:.6rem 1rem;border:1px solid #cbd5e1;border-radius:8px;font-size:.9rem;color:#334155;transition:all .2s;background:#f8fafc}.input-field:focus{outline:none;border-color:#3b82f6;background:#fff;box-shadow:0 0 0 3px #3b82f61a}.ledger-summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1.5rem}.ledger-card{background:#fff;padding:1.25rem;border-radius:12px;box-shadow:0 2px 4px #00000005;border:1px solid #e2e8f0;display:flex;flex-direction:column;gap:.5rem}.card-label{font-size:.85rem;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.02em}.card-value{font-size:1.4rem;font-weight:700;color:#0f172a}.debit-text{color:#ef4444}.credit-text{color:#10b981}.ledger-card.net-positive{background:#fff1f2;border-color:#fecaca}.ledger-card.net-positive .card-value{color:#dc2626}.ledger-card.net-negative{background:#ecfdf5;border-color:#a7f3d0}.ledger-card.net-negative .card-value{color:#059669}.table-wrapper{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000000d;border:1px solid #e2e8f0;overflow-x:auto}.ledger-table{width:100%;border-collapse:collapse;text-align:left;font-size:.9rem}.ledger-table th{background:#f8fafc;padding:1rem 1.25rem;font-weight:600;color:#475569;border-bottom:1px solid #e2e8f0;text-transform:uppercase;letter-spacing:.05em;font-size:.75rem}.ledger-table td{padding:1rem 1.25rem;border-bottom:1px solid #e2e8f0;vertical-align:middle;color:#334155}.col-date{color:#64748b;font-variant-numeric:tabular-nums;white-space:nowrap}.col-entity strong{color:#0f172a;font-weight:600;display:block}.col-ref{display:flex;flex-direction:column;gap:.2rem}.ref-number{font-family:monospace;background:#f1f5f9;padding:.1rem .3rem;border-radius:4px;color:#475569}.ref-notes{font-size:.8rem;color:#94a3b8;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.method-pill{display:inline-block;padding:.25rem .6rem;border-radius:99px;font-size:.75rem;font-weight:600;text-transform:uppercase}.method-upi{background:#f0ebff;color:#7c3aed}.method-cash{background:#dcfce7;color:#16a34a}.method-card{background:#e0f2fe;color:#0284c7}.method-bank{background:#ffedd5;color:#ea580c}.amount-col{text-align:right;font-variant-numeric:tabular-nums;font-weight:600}.amount-col.is-debit{color:#ef4444}.amount-col.is-credit{color:#10b981}.amount-col.is-empty{color:#cbd5e1}.balance-due-text{color:#dc2626;font-size:1.05em}.balance-clear-text{color:#059669}.ledger-table tfoot td{background:#f8fafc;font-weight:700;font-size:.95rem;color:#0f172a;border-top:2px solid #e2e8f0}.footer-label{text-align:right;text-transform:uppercase;color:#475569!important;font-size:.8rem!important}.footer-debit{color:#ef4444!important}.footer-credit{color:#10b981!important}.footer-net{font-size:1.1rem!important}.row-has-balance td{background:#fffafb}.row-cleared td{opacity:.8}.status-pill{display:inline-block;margin-left:.5rem;padding:.15rem .5rem;border-radius:99px;font-size:.7rem;font-weight:600;text-transform:uppercase}.status-cleared{background:#dcfce7;color:#15803d}.action-col{text-align:center}.btn-pay-quick{background:#fff;border:1px solid #3b82f6;color:#3b82f6;padding:.4rem .8rem;border-radius:6px;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-pay-quick:hover{background:#3b82f6;color:#fff;box-shadow:0 2px 4px #3b82f633}.ledger-loading,.ledger-empty-state{display:flex;flex-direction:column;justify-content:center;align-items:center;padding:4rem 2rem;color:#64748b;background:#fff;border-radius:12px;border:1px dashed #cbd5e1;text-align:center}.spinner{width:32px;height:32px;border:3px solid #e2e8f0;border-top-color:#3b82f6;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}.empty-icon{width:48px;height:48px;color:#94a3b8;margin-bottom:1rem}.ledger-empty-state p{font-size:1.1rem;font-weight:500;margin:0;color:#334155}.ledger-empty-state .hint{font-size:.9rem;color:#94a3b8;margin-top:.4rem}@media (max-width: 768px){.ledger-header{flex-direction:column;align-items:flex-start;gap:1rem}.filter-group{flex-direction:column;align-items:stretch}}.purchase-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:1.75rem}.purchase-stat{background:var(--glass-bg, rgba(255,255,255,.7));-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.3);border-radius:14px;padding:1.25rem 1.5rem;box-shadow:var(--shadow);border-left:4px solid}.purchase-stat h4{font-size:.8rem;color:var(--text-secondary);font-weight:500;text-transform:uppercase;letter-spacing:.5px}.purchase-stat .value{font-size:1.3rem;font-weight:700;margin-top:.25rem}.btn-icon.btn-paid:hover{background:#ecfdf5}@media (max-width: 768px){.purchase-stats{grid-template-columns:1fr}}.layout{display:flex;min-height:100vh;background:var(--bg-page)}.sidebar{width:280px;background:#0f172a;background:linear-gradient(180deg,#0f172a,#1e293b);color:#f8fafc;display:flex;flex-direction:column;position:fixed;top:0;left:0;bottom:0;z-index:100;box-shadow:4px 0 24px #00000026;border-right:1px solid rgba(255,255,255,.05);transition:transform var(--transition-normal)}.sidebar-header{padding:2.25rem 1.75rem 1.5rem;text-align:left;position:relative}.sidebar-header:after{content:"";position:absolute;bottom:0;left:1.75rem;right:1.75rem;height:1px;background:linear-gradient(90deg,#ffffff1a,#fff0)}.sidebar-header h2{font-size:1.6rem;font-weight:800;letter-spacing:-.5px;background:linear-gradient(to right,#fff,#a5b4fc);-webkit-background-clip:text;-webkit-text-fill-color:transparent;margin-bottom:.25rem}.sidebar-header .tagline{font-size:.75rem;color:var(--text-light);text-transform:uppercase;letter-spacing:2px;font-weight:600}.sidebar-nav{flex:1;padding:1.5rem 1rem;overflow-y:auto;display:flex;flex-direction:column;gap:.35rem}.sidebar-nav::-webkit-scrollbar{width:4px}.sidebar-nav::-webkit-scrollbar-track{background:transparent}.sidebar-nav::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:4px}.nav-link{display:flex;align-items:center;gap:1rem;padding:.85rem 1.25rem;color:#cbd5e1;font-size:.95rem;font-weight:500;border-radius:var(--radius-sm);transition:all var(--transition-fast);position:relative;overflow:hidden}.nav-link:hover{color:#fff;background:#ffffff0d;transform:translate(4px)}.nav-link.active{color:#fff;background:linear-gradient(90deg,#4f46e526,#4f46e500);font-weight:600}.nav-link.active:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--blue);border-radius:0 4px 4px 0;box-shadow:0 0 10px var(--blue)}.nav-icon{font-size:1.2rem;opacity:.8;transition:opacity var(--transition-fast),transform var(--transition-fast)}.nav-link:hover .nav-icon,.nav-link.active .nav-icon{opacity:1;color:var(--blue)}.nav-link.active .nav-icon{transform:scale(1.1)}.sidebar-sync{padding:1rem 1.25rem;margin:0 1rem 1rem;background:#0003;border-radius:var(--radius);border:1px solid rgba(255,255,255,.05)}.btn-sync{width:100%;display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;background:#ffffff0d;color:#fff;border-radius:var(--radius-sm);font-size:.9rem;font-weight:500;transition:all var(--transition-fast);border:1px solid transparent}.btn-sync:hover{background:#ffffff1a;border-color:#ffffff26;box-shadow:0 4px 12px #0003}.sync-count{background:var(--danger);color:#fff;font-size:.75rem;padding:.2rem .6rem;border-radius:var(--radius-full);font-weight:700;box-shadow:0 2px 8px #ef444466}.sidebar-footer{padding:1.25rem 1.5rem;background:#0003;display:flex;align-items:center;gap:1rem}.user-info{flex:1;display:flex;flex-direction:column}.user-name{font-size:.9rem;font-weight:600;color:#fff;letter-spacing:.25px}.user-role{font-size:.75rem;color:var(--text-light);text-transform:uppercase;letter-spacing:1px;font-weight:500;margin-top:2px}.btn-logout{padding:.5rem;border-radius:var(--radius-sm);background:#ef444426;color:#fca5a5;transition:all var(--transition-fast);display:flex;align-items:center;justify-content:center}.btn-logout:hover{background:var(--danger);color:#fff;transform:translateY(-2px);box-shadow:0 4px 12px #ef44444d}.main-content{flex:1;margin-left:280px;padding:2.5rem 3rem;min-height:100vh;position:relative}.main-content:before{content:"";position:absolute;top:0;left:0;right:0;height:300px;background:linear-gradient(180deg,#4f46e50d,#f8fafc00);pointer-events:none;z-index:0}.page-header{position:relative;z-index:10;display:flex;justify-content:space-between;align-items:center;margin-bottom:2.5rem}.page-header h2{font-size:2.25rem;font-weight:800;color:var(--text-primary);letter-spacing:-1px;line-height:1.2}.page-header .subtitle{font-size:1.05rem;color:var(--text-secondary);font-weight:400;margin-top:.35rem}.sync-modal{max-width:520px}.sync-status-row{display:flex;justify-content:space-between;align-items:center;padding:1rem 0;border-bottom:1px solid var(--border);margin-bottom:1.5rem}.sync-indicator{font-weight:700;font-size:1rem;text-transform:uppercase;letter-spacing:1px}.sync-indicator.online{color:var(--emerald)}.sync-indicator.offline{color:var(--danger)}.sync-indicator.checking{color:var(--warning)}.sync-counts{display:flex;gap:1rem;margin-bottom:1.5rem}.count-item{flex:1;text-align:center;padding:1.25rem;border-radius:var(--radius-lg);background:var(--white);box-shadow:var(--shadow-sm);border:1px solid var(--border);transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.count-item:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.count-item.pending{border-bottom:4px solid var(--warning)}.count-item.synced{border-bottom:4px solid var(--emerald)}.count-item.errored{border-bottom:4px solid var(--danger)}.count-num{display:block;font-size:2rem;font-weight:800;color:var(--text-primary);line-height:1;margin-bottom:.5rem}.count-label{font-size:.8rem;color:var(--text-secondary);text-transform:uppercase;font-weight:600;letter-spacing:.5px}@media (max-width: 1024px){.sidebar{width:80px}.sidebar-header{padding:1.5rem 0;text-align:center}.sidebar-header h2,.sidebar-header .tagline,.nav-link span:not(.nav-icon),.sync-label,.user-info,.btn-logout span{display:none}.sidebar-header:after{display:none}.nav-link{justify-content:center;padding:1.25rem}.nav-icon{font-size:1.5rem;margin:0}.btn-sync{justify-content:center;padding:1rem}.btn-logout{justify-content:center;width:100%;border-radius:var(--radius-full);aspect-ratio:1}.sidebar-footer{flex-direction:column;padding:1rem}.main-content{margin-left:80px;padding:2rem 1.5rem}}.pos-page{display:flex;height:calc(100vh - 60px);background-color:var(--soft-gray)}.product-grid{flex:3;padding:1rem;overflow-y:auto;display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:1rem}.product-card{background:#fff6;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);border-radius:10px;border:1px solid rgba(255,255,255,.2);padding:1rem;text-align:center;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #0000000d}.product-card:hover{transform:translateY(-5px);box-shadow:0 8px 25px #1f268726}.product-card h4{margin:.5rem 0 .25rem;font-size:.9rem;color:var(--blue)}.product-card p{margin:0;font-size:.8rem;color:#6c757d}.cart-section{flex:2;background:#fff3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-left:1px solid rgba(255,255,255,.2);padding:1rem;display:flex;flex-direction:column;box-shadow:-8px 0 32px #1f26871a}.cart-header{padding-bottom:1rem;border-bottom:1px solid rgba(255,255,255,.2);margin-bottom:1rem}.cart-header h3{margin:0;color:var(--blue)}.cart-items{flex-grow:1;overflow-y:auto}.cart-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem 0;border-bottom:1px solid rgba(255,255,255,.1)}.cart-item-details{flex-grow:1}.cart-item-name{font-weight:600;color:#333}.cart-item-price{font-size:.9rem;color:#666}.quantity-controls{display:flex;align-items:center;gap:.5rem}.quantity-controls button{background:var(--blue);color:#fff;border:none;border-radius:50%;width:24px;height:24px;cursor:pointer}.cart-total{padding-top:1rem;border-top:1px solid rgba(255,255,255,.2)}.total-row{display:flex;justify-content:space-between;margin-bottom:.5rem;font-weight:600}.grand-total{font-size:1.5rem;color:var(--blue)}.checkout-btn{width:100%;padding:1rem;background:var(--emerald);color:#fff;border:none;border-radius:10px;font-size:1.2rem;font-weight:600;cursor:pointer;margin-top:1rem;transition:background-color .3s ease}.checkout-btn:hover{background-color:#1a9a7a}.inventory-alerts-page{padding:2rem;background-color:var(--soft-gray)}.alerts-header{margin-bottom:2rem}.alerts-header h2{font-size:2rem;color:var(--blue);font-weight:600}.alerts-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}.alert-card{background:#fff6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:15px;border:1px solid rgba(255,255,255,.2);padding:1.5rem;box-shadow:0 8px 32px #1f26871a;display:flex;align-items:center}.alert-icon{font-size:2rem;color:#dc3545;margin-right:1.5rem}.alert-details h4{margin:0 0 .5rem;color:var(--blue)}.alert-details p{margin:0;color:#6c757d;font-size:.9rem}.stock-level{font-weight:700;color:#dc3545}.reports-page{padding:2rem;background-color:var(--soft-gray)}.reports-header{margin-bottom:2rem}.reports-header h2{font-size:2rem;color:var(--blue);font-weight:600}.report-options{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1.5rem}.report-card{background:#fff6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:15px;border:1px solid rgba(255,255,255,.2);padding:1.5rem;box-shadow:0 8px 32px #1f26871a;transition:all .3s ease;cursor:pointer}.report-card:hover{transform:translateY(-5px);box-shadow:0 12px 40px #1f268733}.report-card-icon{font-size:2.5rem;margin-bottom:1rem;color:var(--blue)}.report-card h4{margin:0 0 .5rem;color:var(--blue)}.report-card p{margin:0;font-size:.9rem;color:#6c757d}.sales-analytics-page{padding:2rem;background-color:var(--soft-gray)}.analytics-header{margin-bottom:2rem}.analytics-header h2{font-size:2rem;color:var(--blue);font-weight:600}.chart-container{background:#fff6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:15px;border:1px solid rgba(255,255,255,.2);padding:2rem;box-shadow:0 8px 32px #1f26871a;margin-bottom:2rem}.chart-container h4{margin-top:0;margin-bottom:1.5rem;color:var(--blue)}.bank-page{animation:fadeIn .3s ease}.bank-page .page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem}.bank-page .page-header h2{font-size:1.5rem;font-weight:700;display:flex;align-items:center;gap:.5rem}.bank-page .page-header .subtitle{color:var(--text-secondary);font-size:.88rem;margin-top:.25rem}.bank-cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem}.empty-state{grid-column:1 / -1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;background:var(--white);border-radius:16px;border:2px dashed var(--border);color:var(--text-secondary)}.empty-state svg{margin-bottom:1rem;opacity:.4}.empty-state h3{font-size:1.15rem;color:var(--text-primary);margin-bottom:.25rem}.empty-state p{font-size:.88rem}.bank-card{position:relative;background:var(--white);border-radius:16px;border:1px solid var(--border);padding:1.5rem;box-shadow:var(--shadow);transition:transform .2s,box-shadow .2s;overflow:hidden}.bank-card:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:var(--blue);border-radius:4px 0 0 4px}.bank-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg)}.bank-card.default:before{background:var(--emerald)}.default-badge{position:absolute;top:.75rem;right:.75rem;display:flex;align-items:center;gap:.3rem;background:linear-gradient(135deg,#10b981,#059669);color:#fff;font-size:.72rem;font-weight:600;padding:.25rem .6rem;border-radius:20px}.bank-card-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1.25rem}.bank-icon{width:40px;height:40px;border-radius:10px;background:linear-gradient(135deg,#2a7de1,#1d6fd1);display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.1rem}.bank-card-header h3{font-size:1.05rem;font-weight:600;color:var(--text-primary)}.bank-card-body{display:flex;flex-direction:column;gap:.6rem;margin-bottom:1rem}.bank-detail{display:flex;justify-content:space-between;align-items:center}.bank-detail .label{font-size:.82rem;color:var(--text-secondary);font-weight:500}.bank-detail .value{font-size:.88rem;font-weight:600;color:var(--text-primary);font-family:SF Mono,Fira Code,monospace;letter-spacing:.5px}.bank-card-actions{display:flex;gap:.5rem;justify-content:flex-end;border-top:1px solid var(--border);padding-top:.75rem}.bank-card-actions .btn-icon{width:34px;height:34px;border-radius:8px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border);background:var(--soft-gray);color:var(--text-secondary);cursor:pointer;transition:all .2s}.bank-card-actions .btn-icon:hover{background:var(--blue);color:#fff;border-color:var(--blue)}.bank-card-actions .btn-icon-danger:hover{background:var(--danger);border-color:var(--danger)}.bank-form-modal{max-width:520px!important;width:95%}.bank-form{display:flex;flex-direction:column;gap:1rem;padding:1.25rem}.bank-form .form-group label{display:block;font-size:.82rem;font-weight:600;color:var(--text-secondary);margin-bottom:.35rem}.bank-form .form-group input[type=text]{width:100%;padding:.65rem .85rem;border:1px solid var(--border);border-radius:10px;font-size:.92rem;background:var(--white);transition:border-color .2s,box-shadow .2s;outline:none}.bank-form .form-group input[type=text]:focus{border-color:var(--blue);box-shadow:0 0 0 3px #2a7de11f}.bank-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.bank-form .checkbox-group label{display:flex;align-items:center;gap:.5rem;font-size:.88rem;color:var(--text-primary);cursor:pointer}.bank-form .checkbox-group input[type=checkbox]{width:18px;height:18px;accent-color:var(--blue)}.page-loading{display:flex;align-items:center;justify-content:center;padding:4rem;font-size:1rem;color:var(--text-secondary)}@media (max-width: 768px){.bank-cards-grid,.bank-form .form-row{grid-template-columns:1fr}}.upi-page{animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.upi-page .page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem}.upi-page .page-header h2{font-size:1.5rem;font-weight:700;display:flex;align-items:center;gap:.5rem}.upi-page .page-header .subtitle{color:var(--text-secondary);font-size:.88rem;margin-top:.25rem}.upi-cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}.upi-card{position:relative;background:var(--white);border-radius:16px;border:1px solid var(--border);padding:1.5rem;box-shadow:var(--shadow);transition:transform .2s,box-shadow .2s;overflow:hidden}.upi-card:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:#7c3aed;border-radius:4px 0 0 4px}.upi-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg)}.upi-card.default:before{background:var(--emerald)}.upi-card .default-badge{position:absolute;top:.75rem;right:.75rem;display:flex;align-items:center;gap:.3rem;background:linear-gradient(135deg,#10b981,#059669);color:#fff;font-size:.72rem;font-weight:600;padding:.25rem .6rem;border-radius:20px}.upi-card-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.upi-icon{width:40px;height:40px;border-radius:10px;background:linear-gradient(135deg,#7c3aed,#6d28d9);display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.1rem;flex-shrink:0}.upi-card-header h3{font-size:1rem;font-weight:600;color:var(--text-primary);font-family:SF Mono,Fira Code,monospace;letter-spacing:.3px}.upi-holder{font-size:.82rem;color:var(--text-secondary);display:block;margin-top:.15rem}.upi-card-body{margin-bottom:1rem}.upi-detail{display:flex;justify-content:space-between;align-items:center}.upi-detail .label{font-size:.82rem;color:var(--text-secondary);font-weight:500}.upi-provider-badge{display:inline-block;padding:.2rem .6rem;border-radius:20px;font-size:.75rem;font-weight:600;background:#f3e8ff;color:#7c3aed}.upi-card-actions{display:flex;gap:.5rem;justify-content:flex-end;border-top:1px solid var(--border);padding-top:.75rem}.upi-card-actions .btn-icon{width:34px;height:34px;border-radius:8px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border);background:var(--soft-gray);color:var(--text-secondary);cursor:pointer;transition:all .2s}.upi-card-actions .btn-icon:hover{background:#7c3aed;color:#fff;border-color:#7c3aed}.upi-card-actions .btn-icon-danger:hover{background:var(--danger);border-color:var(--danger)}.upi-form-modal{max-width:460px!important;width:95%}.upi-form{display:flex;flex-direction:column;gap:1rem;padding:1.25rem}.upi-form .form-group label{display:block;font-size:.82rem;font-weight:600;color:var(--text-secondary);margin-bottom:.35rem}.upi-form .form-group input[type=text],.upi-form .form-group select{width:100%;padding:.65rem .85rem;border:1px solid var(--border);border-radius:10px;font-size:.92rem;background:var(--white);transition:border-color .2s,box-shadow .2s;outline:none}.upi-form .form-group input[type=text]:focus,.upi-form .form-group select:focus{border-color:#7c3aed;box-shadow:0 0 0 3px #7c3aed1f}.upi-form .checkbox-group label{display:flex;align-items:center;gap:.5rem;font-size:.88rem;color:var(--text-primary);cursor:pointer}.upi-form .checkbox-group input[type=checkbox]{width:18px;height:18px;accent-color:#7c3aed}@media (max-width: 768px){.upi-cards-grid{grid-template-columns:1fr}}:root{--chat-primary: #2563eb;--chat-primary-hover: #1d4ed8;--chat-surface: #ffffff;--chat-bg: #f8fafc;--chat-border: #e2e8f0;--chat-text-main: #0f172a;--chat-text-muted: #64748b;--chat-radius-window: 16px;--chat-radius-bubble: 16px;--chat-shadow-lg: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--chat-shadow-md: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--chat-shadow-fab: 0 10px 25px -5px rgba(37, 99, 235, .4)}.chatbot-window,.chatbot-fab{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;color:var(--chat-text-main);box-sizing:border-box}.chatbot-fab{position:fixed;bottom:24px;right:24px;z-index:1100;width:60px;height:60px;border-radius:50%;border:none;cursor:pointer;background:var(--chat-primary);color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:var(--chat-shadow-fab);transition:transform .25s cubic-bezier(.34,1.56,.64,1),background .25s ease,box-shadow .25s ease;outline:none}.chatbot-fab svg{width:28px;height:28px;transition:transform .3s cubic-bezier(.34,1.56,.64,1)}.chatbot-fab:hover{transform:translateY(-4px);background:var(--chat-primary-hover);box-shadow:0 14px 28px -6px #2563eb80}.chatbot-fab.fab-open{background:var(--chat-text-main);box-shadow:var(--chat-shadow-md)}.chatbot-fab.fab-open svg{transform:rotate(90deg)}.fab-badge{position:absolute;top:-2px;right:-2px;background:#ef4444;color:#fff;font-size:.65rem;font-weight:700;letter-spacing:.05em;padding:3px 6px;border-radius:8px;border:2px solid #fff;pointer-events:none;animation:badge-pulse 2.5s infinite}@keyframes badge-pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.08);opacity:.9}}.chatbot-window{position:fixed;bottom:100px;right:24px;z-index:1099;width:400px;max-height:700px;border-radius:var(--chat-radius-window);background:var(--chat-surface);border:1px solid var(--chat-border);box-shadow:var(--chat-shadow-lg);display:flex;flex-direction:column;overflow:hidden;opacity:0;transform:translateY(20px) scale(.96);pointer-events:none;transition:opacity .3s ease,transform .3s cubic-bezier(.34,1.56,.64,1)}.chatbot-window-open{opacity:1;transform:translateY(0) scale(1);pointer-events:auto}.chatbot-header{padding:18px 20px;background:var(--chat-surface);border-bottom:1px solid var(--chat-border);display:flex;align-items:center;justify-content:space-between;flex-shrink:0}.chatbot-header-info{display:flex;align-items:center;gap:12px}.chatbot-avatar-ring{width:42px;height:42px;border-radius:50%;background:var(--chat-bg);display:flex;align-items:center;justify-content:center;font-size:1.25rem;border:1px solid var(--chat-border)}.chatbot-header-info h3{margin:0;font-size:1rem;font-weight:600;color:var(--chat-text-main);letter-spacing:-.01em}.chatbot-status{display:flex;align-items:center;gap:6px;font-size:.75rem;color:var(--chat-text-muted);margin-top:3px;font-weight:500}.status-dot{width:8px;height:8px;border-radius:50%;background:#10b981}.chatbot-header-actions{display:flex;gap:8px}.icon-btn{background:transparent;border:none;cursor:pointer;color:var(--chat-text-muted);width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;transition:background .2s,color .2s}.icon-btn:hover{background:var(--chat-bg);color:var(--chat-text-main)}.icon-btn svg{width:18px;height:18px}.chatbot-scope-row{display:flex;gap:8px;padding:12px 20px;background:var(--chat-surface);border-bottom:1px solid var(--chat-border);flex-shrink:0;flex-wrap:wrap}.scope-tag{font-size:.7rem;font-weight:600;padding:4px 10px;border-radius:6px;background:#f1f5f9;border:1px solid var(--chat-border);color:var(--chat-text-muted);letter-spacing:.01em}.chatbot-messages{flex:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:16px;scroll-behavior:smooth;background:var(--chat-surface)}.chatbot-messages::-webkit-scrollbar{width:6px}.chatbot-messages::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:6px}.chatbot-messages::-webkit-scrollbar-track{background:transparent}.chat-bubble-wrapper{display:flex;align-items:flex-end;gap:10px}.chat-bubble-wrapper.user{flex-direction:row-reverse}.chat-avatar{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.9rem;flex-shrink:0}.bot-avatar{background:var(--chat-bg);border:1px solid var(--chat-border)}.user-avatar{background:#dceafe;border:1px solid #bfdbfe}.chat-bubble{max-width:82%;padding:12px 16px;border-radius:var(--chat-radius-bubble);font-size:.875rem;line-height:1.5;word-wrap:break-word;position:relative;animation:bubble-in .25s cubic-bezier(.34,1.56,.64,1);box-shadow:0 1px 2px #0000000d}@keyframes bubble-in{0%{opacity:0;transform:scale(.9) translateY(4px)}to{opacity:1;transform:scale(1) translateY(0)}}.bot-bubble{background:var(--chat-bg);border:1px solid var(--chat-border);border-bottom-left-radius:4px;color:var(--chat-text-main)}.bot-bubble p,.bot-bubble li,.bot-bubble h1,.bot-bubble h2,.bot-bubble h3,.md-content p,.md-content li,.md-content h1,.md-content h2,.md-content h3{margin:0 0 8px;color:var(--chat-text-main)}.bot-bubble p:last-child,.md-content p:last-child{margin-bottom:0}.md-content{margin:0}.md-content ul,.md-content ol{padding-left:20px;margin:8px 0}.md-content hr{border:none;border-top:1px solid var(--chat-border);margin:12px 0}.bot-bubble strong{font-weight:600;color:#000}.bot-bubble code{background:#e2e8f0;padding:2px 6px;border-radius:4px;font-size:.8rem;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;color:#334155}.bot-bubble table{border-collapse:collapse;width:100%;margin:10px 0;font-size:.8rem;border-radius:8px;overflow:hidden;box-shadow:0 1px 3px #0000000d}.bot-bubble th,.bot-bubble td{border:1px solid var(--chat-border);padding:8px 12px;color:var(--chat-text-main);text-align:left}.bot-bubble th{background:#f1f5f9;font-weight:600}.user-bubble{background:var(--chat-primary);border:1px solid var(--chat-primary);border-bottom-right-radius:4px;color:#fff}.user-bubble p{margin:0;color:#fff}.chat-time{display:block;font-size:.65rem;opacity:.7;margin-top:6px;text-align:right}.user-bubble .chat-time{color:#fffc}.bot-bubble .chat-time{color:var(--chat-text-muted)}.typing-bubble{display:flex;gap:4px;align-items:center;padding:14px 16px}.dot{width:6px;height:6px;border-radius:50%;background:var(--chat-text-muted);animation:bounce-dot 1.4s infinite ease-in-out both}.dot:nth-child(1){animation-delay:-.32s}.dot:nth-child(2){animation-delay:-.16s}@keyframes bounce-dot{0%,80%,to{transform:scale(0);opacity:.4}40%{transform:scale(1);opacity:1}}.chat-error{background:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:10px 14px;font-size:.8rem;color:#b91c1c;margin:0}.chatbot-suggestions{display:flex;flex-wrap:wrap;gap:8px;padding:12px 20px;border-top:1px solid var(--chat-border);background:var(--chat-surface);flex-shrink:0}.suggestion-chip{font-size:.75rem;padding:6px 12px;border-radius:16px;border:1px solid var(--chat-border);background:var(--chat-surface);color:var(--chat-text-main);cursor:pointer;transition:all .2s ease;white-space:nowrap;font-weight:500}.suggestion-chip:hover{background:#f1f5f9;border-color:#cbd5e1}.chatbot-input-row{display:flex;align-items:center;gap:12px;padding:14px 20px;border-top:1px solid var(--chat-border);background:#fff;flex-shrink:0}.chatbot-input{flex:1;background:var(--chat-bg);border:1px solid var(--chat-border);border-radius:24px;padding:10px 16px;color:var(--chat-text-main);font-size:.875rem;resize:none;outline:none;line-height:1.5;max-height:100px;overflow-y:auto;font-family:inherit;transition:border-color .2s,box-shadow .2s}.chatbot-input::placeholder{color:var(--chat-text-muted)}.chatbot-input:focus{border-color:var(--chat-primary);box-shadow:0 0 0 2px #2563eb1a;background:var(--chat-surface)}.chatbot-send-btn{width:40px;height:40px;border-radius:50%;border:none;background:var(--chat-primary);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:transform .2s,background .2s}.chatbot-send-btn svg{width:18px;height:18px}.chatbot-send-btn:hover{background:var(--chat-primary-hover);transform:scale(1.05)}.chatbot-send-btn:disabled{background:#e2e8f0;color:#94a3b8;cursor:not-allowed;transform:none}.send-spinner{width:18px;height:18px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.chatbot-footer-note{text-align:center;font-size:.65rem;color:var(--chat-text-muted);padding:8px 0 12px;margin:0;flex-shrink:0;background:var(--chat-surface)}@media (max-width: 480px){.chatbot-window{width:calc(100vw - 32px);right:16px;bottom:90px;max-height:calc(100vh - 110px)}.chatbot-fab{bottom:16px;right:16px;width:54px;height:54px}}:root{--blue: #2563eb;--blue-dark: #1d4ed8;--emerald: #059669;--emerald-dark: #047857;--white: #ffffff;--bg-page: #f8fafc;--soft-gray: #f1f5f9;--text-primary: #0f172a;--text-secondary: #475569;--text-light: #94a3b8;--border: #e2e8f0;--border-focus: #a5b4fc;--success: #10b981;--success-bg: #d1fae5;--danger: #ef4444;--danger-bg: #fee2e2;--warning: #f59e0b;--warning-bg: #fef3c7;--info: #3b82f6;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow: 0 4px 6px -1px rgb(0 0 0 / .05), 0 2px 4px -2px rgb(0 0 0 / .05);--shadow-md: 0 10px 15px -3px rgb(0 0 0 / .05), 0 4px 6px -4px rgb(0 0 0 / .05);--shadow-lg: 0 20px 25px -5px rgb(0 0 0 / .05), 0 8px 10px -6px rgb(0 0 0 / .05);--shadow-glow: 0 0 20px rgba(79, 70, 229, .2);--radius-sm: 8px;--radius: 12px;--radius-lg: 16px;--radius-xl: 24px;--radius-full: 9999px;--glass-bg: rgba(255, 255, 255, .75);--glass-border: rgba(255, 255, 255, .5);--glass-blur: blur(20px);--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-normal: .3s cubic-bezier(.4, 0, .2, 1)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;background:var(--bg-page);color:var(--text-primary);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{text-decoration:none;color:inherit}button{cursor:pointer;border:none;font-family:inherit;outline:none}input,select,textarea{font-family:inherit;font-size:.95rem}.loading-screen{display:flex;align-items:center;justify-content:center;min-height:100vh;font-size:1.1rem;font-weight:500;letter-spacing:.5px;color:var(--text-secondary);background:var(--bg-page)}.glass-card{background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);border-radius:var(--radius-lg);box-shadow:var(--shadow);transition:transform var(--transition-normal),box-shadow var(--transition-normal)}.glass-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}@keyframes modalFadeIn{0%{opacity:0;-webkit-backdrop-filter:blur(0px);backdrop-filter:blur(0px)}to{opacity:1;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(20px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a66;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:modalFadeIn .3s ease forwards}.modal-box{background:var(--white);border-radius:var(--radius-xl);padding:2.5rem;width:90%;max-width:650px;max-height:90vh;overflow-y:auto;box-shadow:0 25px 50px -12px #00000040;animation:modalSlideUp .4s cubic-bezier(.16,1,.3,1) forwards;border:1px solid rgba(255,255,255,.8)}.modal-box::-webkit-scrollbar{width:8px}.modal-box::-webkit-scrollbar-track{background:transparent}.modal-box::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}.modal-box::-webkit-scrollbar-thumb:hover{background:var(--text-light)}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1rem;border-bottom:1px solid var(--soft-gray)}.modal-header h3{font-size:1.5rem;font-weight:700;color:var(--text-primary);letter-spacing:-.5px}.btn-close{background:var(--soft-gray);font-size:1.25rem;color:var(--text-secondary);width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all var(--transition-fast)}.btn-close:hover{background:var(--danger-bg);color:var(--danger);transform:rotate(90deg)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:1.5rem}@media (max-width: 600px){.form-grid{grid-template-columns:1fr}}.form-group{display:flex;flex-direction:column}.form-group.full-width{grid-column:1 / -1}.form-group label{font-size:.85rem;font-weight:600;color:var(--text-secondary);margin-bottom:.5rem;text-transform:uppercase;letter-spacing:.5px}.form-group input,.form-group textarea,.form-group select{width:100%;padding:.85rem 1.1rem;border:1.5px solid var(--border);border-radius:var(--radius);background:var(--bg-page);color:var(--text-primary);font-size:.95rem;outline:none;font-weight:500;transition:all var(--transition-fast)}.form-group input:hover,.form-group textarea:hover,.form-group select:hover{border-color:#cbd5e1;background:var(--white)}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{border-color:var(--blue);background:var(--white);box-shadow:0 0 0 4px #4f46e526}.form-group textarea{resize:vertical;min-height:100px}button.btn-primary,.btn-primary{background:linear-gradient(135deg,var(--blue) 0%,var(--blue-dark) 100%)!important;color:#fff!important;padding:.75rem 1.5rem!important;border-radius:var(--radius)!important;font-weight:600!important;letter-spacing:.5px!important;box-shadow:var(--shadow-sm),0 4px 12px #4f46e540!important;transition:all var(--transition-fast)!important;display:inline-flex;align-items:center;justify-content:center;gap:.5rem}button.btn-primary:hover,.btn-primary:hover{transform:translateY(-2px)!important;box-shadow:var(--shadow-md),0 6px 16px #4f46e54d!important}button.btn-secondary,.btn-secondary{background:var(--white)!important;color:var(--text-primary)!important;padding:.75rem 1.5rem!important;border:1px solid var(--border)!important;border-radius:var(--radius)!important;font-weight:600!important;box-shadow:var(--shadow-sm)!important;transition:all var(--transition-fast)!important}button.btn-secondary:hover,.btn-secondary:hover{background:var(--soft-gray)!important;border-color:#cbd5e1!important}button.btn-danger,.btn-danger{background:var(--danger)!important;color:#fff!important;padding:.75rem 1.5rem!important;border-radius:var(--radius)!important;font-weight:600!important;box-shadow:var(--shadow-sm),0 4px 12px #ef444440!important;transition:all var(--transition-fast)!important}button.btn-danger:hover,.btn-danger:hover{background:#dc2626!important;transform:translateY(-2px)!important;box-shadow:var(--shadow-md),0 6px 16px #ef44444d!important}
