@charset "UTF-8";:root{--toastify-color-light: #fff;--toastify-color-dark: #121212;--toastify-color-info: #3498db;--toastify-color-success: #07bc0c;--toastify-color-warning: #f1c40f;--toastify-color-error: hsl(6, 78%, 57%);--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-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 rgba(0, 0, 0, .1);--toastify-font-family: sans-serif;--toastify-z-index: 9999;--toastify-text-color-light: #757575;--toastify-text-color-dark: #fff;--toastify-text-color-info: #fff;--toastify-text-color-success: #fff;--toastify-text-color-warning: #fff;--toastify-text-color-error: #fff;--toastify-spinner-color: #616161;--toastify-spinner-color-empty-area: #e0e0e0;--toastify-color-progress-light: linear-gradient(to right, #4cd964, #5ac8fa, #007aff, #34aadc, #5856d6, #ff2d55);--toastify-color-progress-dark: #bb86fc;--toastify-color-progress-info: var(--toastify-color-info);--toastify-color-progress-success: var(--toastify-color-success);--toastify-color-progress-warning: var(--toastify-color-warning);--toastify-color-progress-error: var(--toastify-color-error);--toastify-color-progress-bgo: .2}.Toastify__toast-container{z-index:var(--toastify-z-index);-webkit-transform:translate3d(0,0,var(--toastify-z-index));position:fixed;width:var(--toastify-container-width);box-sizing:border-box;color:#fff;display:flex;flex-direction:column}.Toastify__toast-container--top-left{top:var(--toastify-toast-top);left:var(--toastify-toast-left)}.Toastify__toast-container--top-center{top:var(--toastify-toast-top);left:50%;transform:translate(-50%);align-items:center}.Toastify__toast-container--top-right{top:var(--toastify-toast-top);right:var(--toastify-toast-right);align-items:end}.Toastify__toast-container--bottom-left{bottom:var(--toastify-toast-bottom);left:var(--toastify-toast-left)}.Toastify__toast-container--bottom-center{bottom:var(--toastify-toast-bottom);left:50%;transform:translate(-50%);align-items:center}.Toastify__toast-container--bottom-right{bottom:var(--toastify-toast-bottom);right:var(--toastify-toast-right);align-items:end}.Toastify__toast{--y: 0px;position:relative;touch-action:none;width:var(--toastify-toast-width);min-height:var(--toastify-toast-min-height);box-sizing:border-box;margin-bottom:1rem;padding:var(--toastify-toast-padding);border-radius:var(--toastify-toast-bd-radius);box-shadow:var(--toastify-toast-shadow);max-height:var(--toastify-toast-max-height);font-family:var(--toastify-font-family);z-index:0;display:flex;flex:1 auto;align-items:center;word-break:break-word}@media only screen and (max-width: 480px){.Toastify__toast-container{width:100vw;left:env(safe-area-inset-left);margin:0}.Toastify__toast-container--top-left,.Toastify__toast-container--top-center,.Toastify__toast-container--top-right{top:env(safe-area-inset-top);transform:translate(0)}.Toastify__toast-container--bottom-left,.Toastify__toast-container--bottom-center,.Toastify__toast-container--bottom-right{bottom:env(safe-area-inset-bottom);transform:translate(0)}.Toastify__toast-container--rtl{right:env(safe-area-inset-right);left:initial}.Toastify__toast{--toastify-toast-width: 100%;margin-bottom:0;border-radius:0}}.Toastify__toast-container[data-stacked=true]{width:var(--toastify-toast-width)}@media only screen and (max-width: 480px){.Toastify__toast-container[data-stacked=true]{width:100vw}}.Toastify__toast--stacked{position:absolute;width:100%;transform:translate3d(0,var(--y),0) scale(var(--s));transition:transform .3s}.Toastify__toast--stacked[data-collapsed] .Toastify__toast-body,.Toastify__toast--stacked[data-collapsed] .Toastify__close-button{transition:opacity .1s}.Toastify__toast--stacked[data-collapsed=false]{overflow:visible}.Toastify__toast--stacked[data-collapsed=true]:not(:last-child)>*{opacity:0}.Toastify__toast--stacked:after{content:"";position:absolute;left:0;right:0;height:calc(var(--g) * 1px);bottom:100%}.Toastify__toast--stacked[data-pos=top]{top:0}.Toastify__toast--stacked[data-pos=bot]{bottom:0}.Toastify__toast--stacked[data-pos=bot].Toastify__toast--stacked:before{transform-origin:top}.Toastify__toast--stacked[data-pos=top].Toastify__toast--stacked:before{transform-origin:bottom}.Toastify__toast--stacked:before{content:"";position:absolute;left:0;right:0;bottom:0;height:100%;transform:scaleY(3);z-index:-1}.Toastify__toast--rtl{direction:rtl}.Toastify__toast--close-on-click{cursor:pointer}.Toastify__toast-icon{margin-inline-end:10px;width:22px;flex-shrink:0;display:flex}.Toastify--animate{animation-fill-mode:both;animation-duration:.5s}.Toastify--animate-icon{animation-fill-mode:both;animation-duration:.3s}.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;position:absolute;top:6px;right:6px;background:transparent;outline:none;border:none;padding:0;cursor:pointer;opacity:.7;transition:.3s ease;z-index:1}.Toastify__toast--rtl .Toastify__close-button{left:6px;right:unset}.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:100%;z-index:1;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;border-bottom-left-radius:initial}.Toastify__progress-bar--wrp{position:absolute;overflow:hidden;bottom:0;left:0;width:100%;height:5px;border-bottom-left-radius:var(--toastify-toast-bd-radius);border-bottom-right-radius:var(--toastify-toast-bd-radius)}.Toastify__progress-bar--wrp[data-hidden=true]{opacity:0}.Toastify__progress-bar--bg{opacity:var(--toastify-color-progress-bgo);width:100%;height:100%}.Toastify__spinner{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,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--top-left,.Toastify__bounce-enter--bottom-left{animation-name:Toastify__bounceInLeft}.Toastify__bounce-enter--top-right,.Toastify__bounce-enter--bottom-right{animation-name:Toastify__bounceInRight}.Toastify__bounce-enter--top-center{animation-name:Toastify__bounceInDown}.Toastify__bounce-enter--bottom-center{animation-name:Toastify__bounceInUp}.Toastify__bounce-exit--top-left,.Toastify__bounce-exit--bottom-left{animation-name:Toastify__bounceOutLeft}.Toastify__bounce-exit--top-right,.Toastify__bounce-exit--bottom-right{animation-name:Toastify__bounceOutRight}.Toastify__bounce-exit--top-center{animation-name:Toastify__bounceOutUp}.Toastify__bounce-exit--bottom-center{animation-name:Toastify__bounceOutDown}@keyframes Toastify__zoomIn{0%{opacity:0;transform:scale3d(.3,.3,.3)}50%{opacity:1}}@keyframes Toastify__zoomOut{0%{opacity:1}50%{opacity:0;transform:translate3d(0,var(--y),0) scale3d(.3,.3,.3)}to{opacity:0}}.Toastify__zoom-enter{animation-name:Toastify__zoomIn}.Toastify__zoom-exit{animation-name:Toastify__zoomOut}@keyframes Toastify__flipIn{0%{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:translate3d(0,var(--y),0) perspective(400px)}30%{transform:translate3d(0,var(--y),0) perspective(400px) rotateX(-20deg);opacity:1}to{transform:translate3d(0,var(--y),0) 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: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{visibility:hidden;transform:translate3d(110%,var(--y),0)}}@keyframes Toastify__slideOutLeft{0%{transform:translate3d(0,var(--y),0)}to{visibility:hidden;transform:translate3d(-110%,var(--y),0)}}@keyframes Toastify__slideOutDown{0%{transform:translate3d(0,var(--y),0)}to{visibility:hidden;transform:translate3d(0,500px,0)}}@keyframes Toastify__slideOutUp{0%{transform:translate3d(0,var(--y),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;animation-timing-function:ease-in;animation-duration:.3s}.Toastify__slide-exit--top-right,.Toastify__slide-exit--bottom-right{animation-name:Toastify__slideOutRight;animation-timing-function:ease-in;animation-duration:.3s}.Toastify__slide-exit--top-center{animation-name:Toastify__slideOutUp;animation-timing-function:ease-in;animation-duration:.3s}.Toastify__slide-exit--bottom-center{animation-name:Toastify__slideOutDown;animation-timing-function:ease-in;animation-duration:.3s}@keyframes Toastify__spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.info-page{min-height:100vh;background:linear-gradient(135deg,#f5f7fa,#e9ecef);padding-bottom:2rem}.info-page .info-header{background:linear-gradient(135deg,#036,#06c);color:#fff;padding:80px 2rem;text-align:center}@media (max-width: 640px){.info-page .info-header{padding:60px 1.5rem}}.info-page .info-header .info-header-content{max-width:800px;margin:0 auto}.info-page .info-header .info-header-content h1{font-size:2.5rem;font-weight:700;margin:0 0 1rem;letter-spacing:-.5px}@media (max-width: 640px){.info-page .info-header .info-header-content h1{font-size:2rem}}.info-page .info-header .info-header-content .subtitle{font-size:1.5rem;font-weight:300;margin:0;opacity:.95}@media (max-width: 640px){.info-page .info-header .info-header-content .subtitle{font-size:1.25rem}}.info-page .info-container{max-width:1200px;margin:0 auto;padding:0 2rem}@media (max-width: 640px){.info-page .info-container{padding:0 1.5rem}}.info-page .info-container .info-section{margin:3rem 0;padding:3rem;background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000000d}@media (max-width: 640px){.info-page .info-container .info-section{margin:3rem 0;padding:1.5rem}}.info-page .info-container .info-section h2{color:#036;font-size:2rem;margin:0 0 1.5rem;padding-bottom:1rem;border-bottom:2px solid #0066cc}.info-page .info-container .info-section>p{color:#333;font-size:1rem;line-height:1.6;margin:0}.info-page .info-container .info-section>p strong{color:#036;font-weight:600}.user-types-section{margin:3rem 0!important}.user-types-section .user-types-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:2rem;margin-top:3rem}@media (max-width: 640px){.user-types-section .user-types-grid{grid-template-columns:1fr;gap:1.5rem}}.user-types-section .user-type-card{background:#fff;border:2px solid #f5f5f5;border-radius:8px;padding:2rem;transition:all .3s ease;display:flex;flex-direction:column;cursor:pointer}.user-types-section .user-type-card:focus-visible{outline:3px solid rgba(0,102,204,.35);outline-offset:2px}.user-types-section .user-type-card:hover{box-shadow:0 8px 24px #0000001f;transform:translateY(-4px);border-color:#06c}.user-types-section .user-type-card .card-icon{font-size:3rem;line-height:1;margin-bottom:1rem}.user-types-section .user-type-card h3{color:#036;font-size:1.5rem;margin:0 0 1rem;font-weight:700}.user-types-section .user-type-card .card-description{color:#333;font-size:1rem;margin:0 0 1.5rem;line-height:1.5}.user-types-section .user-type-card .card-details{flex:1;margin-bottom:1.5rem}.user-types-section .user-type-card .card-details h4{color:#036;font-size:.875rem;font-weight:700;margin:0 0 .5rem;text-transform:uppercase;letter-spacing:.5px}.user-types-section .user-type-card .card-details ul{list-style:none;padding:0;margin:0}.user-types-section .user-type-card .card-details ul li{color:#666;font-size:.875rem;padding:.25rem 0 .25rem 1rem;position:relative}.user-types-section .user-type-card .card-details ul li:before{content:"✓";position:absolute;left:0;color:#06c;font-weight:700}.user-types-section .user-type-card .card-login{border-top:1px solid #f5f5f5;padding-top:1.5rem}.user-types-section .user-type-card .card-login p{color:#666;font-size:.875rem;margin:0 0 1rem}.user-types-section .user-type-card .card-login p strong{color:#036}.user-types-section .user-type-card.login-card{border-left:4px solid #0066cc}.user-types-section .user-type-card.login-card:hover{border-color:#06c}.user-types-section .user-type-card.login-card h3,.user-types-section .user-type-card.login-card .card-details h4,.user-types-section .user-type-card.login-card .card-login p strong{color:#06c}.user-types-section .user-type-card.client-card{border-left:4px solid #4CAF50}.user-types-section .user-type-card.client-card:hover{border-color:#4caf50}.user-types-section .user-type-card.client-card h3,.user-types-section .user-type-card.client-card .card-details h4,.user-types-section .user-type-card.client-card .card-login p strong{color:#2e7d32}.user-types-section .user-type-card.other-card{border-left:4px solid #FF9800}.user-types-section .user-type-card.other-card:hover{border-color:#ff9800}.user-types-section .user-type-card.other-card h3,.user-types-section .user-type-card.other-card .card-details h4,.user-types-section .user-type-card.other-card .card-login p strong{color:#e65100}.user-types-section .user-type-card.admin-card{border-left:4px solid #9C27B0}.user-types-section .user-type-card.admin-card:hover{border-color:#9c27b0}.user-types-section .user-type-card.admin-card h3,.user-types-section .user-type-card.admin-card .card-details h4,.user-types-section .user-type-card.admin-card .card-login p strong{color:#6a1b9a}.calculators-section{margin:3rem 0!important}.calculators-section .section-intro{color:#333;font-size:1rem;line-height:1.6;margin-top:1.5rem}.calculators-section .calculators-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-top:3rem}@media (max-width: 640px){.calculators-section .calculators-grid{grid-template-columns:1fr;gap:1.5rem}}.calculators-section .calculator-card{background:linear-gradient(135deg,#fff,#f8f9fa);border:1px solid #f5f5f5;border-radius:8px;padding:2rem;transition:all .3s ease;display:flex;flex-direction:column;cursor:pointer}.calculators-section .calculator-card:focus-visible{outline:3px solid rgba(0,102,204,.35);outline-offset:2px}@media (max-width: 640px){.calculators-section .calculator-card{padding:1.5rem}}.calculators-section .calculator-card:hover{box-shadow:0 8px 24px #0000001f;transform:translateY(-4px);border-color:#06c}.calculators-section .calculator-card.featured{border:2px solid #0066cc;background:linear-gradient(135deg,#0066cc0d,#fff)}.calculators-section .calculator-card.featured:hover{box-shadow:0 12px 32px #06c3}.calculators-section .calculator-card.featured .calc-icon{color:#06c}.calculators-section .calculator-card .calc-icon{font-size:2.5rem;line-height:1;margin-bottom:1rem}.calculators-section .calculator-card h3{color:#036;font-size:1.25rem;margin:0 0 1rem;font-weight:700}.calculators-section .calculator-card p{color:#333;font-size:.875rem;line-height:1.6;margin:0 0 1.5rem;flex:1}.calculators-section .calculator-card .btn{align-self:flex-start;margin-top:auto}.faq-section{background:linear-gradient(135deg,#00336605,#0066cc05)!important}.faq-section .faq-items{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;margin-top:1.5rem}@media (max-width: 640px){.faq-section .faq-items{grid-template-columns:1fr;gap:1.5rem}}.faq-section .faq-item h4{color:#036;font-size:1rem;margin:0 0 .5rem;font-weight:700}.faq-section .faq-item p{color:#333;font-size:.875rem;line-height:1.6;margin:0}.cta-section{text-align:center!important;background:linear-gradient(135deg,#036,#06c);color:#fff!important}.cta-section h2{color:#fff!important;border-bottom-color:#ffffff4d!important}.cta-section .cta-buttons{display:flex;gap:1.5rem;justify-content:center;flex-wrap:wrap;margin:3rem 0}@media (max-width: 640px){.cta-section .cta-buttons{flex-direction:column;gap:1rem}}.cta-section .cta-buttons .btn.btn-primary{background-color:#fff;color:#036;font-weight:700}.cta-section .cta-buttons .btn.btn-primary:hover{background-color:#f5f5f5}.cta-section .cta-buttons .btn.btn-secondary{background-color:#fff3;color:#fff;border:2px solid #ffffff}.cta-section .cta-buttons .btn.btn-secondary:hover{background-color:#ffffff4d}.cta-section .disclaimer{color:#fffffff2!important;font-size:.875rem;margin:0}.cta-section .disclaimer strong{font-weight:700}.btn{display:inline-flex;align-items:center;justify-content:center;padding:1rem 1.5rem;border:none;border-radius:4px;font-size:.875rem;font-weight:600;text-decoration:none;cursor:pointer;transition:all .3s ease}.btn.full-width{width:100%}.btn.btn-lg{padding:1.5rem 3rem;font-size:1rem}.btn.btn-primary{background-color:#036;color:#fff}.btn.btn-primary:hover{background-color:#001a33}.btn.btn-secondary{background-color:#06c;color:#fff}.btn.btn-secondary:hover{background-color:#004d99}.btn.btn-tertiary{background-color:#9c27b0;color:#fff}.btn.btn-tertiary:hover{background-color:#7b1fa2}@keyframes pageEnter{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.page-transition{animation:pageEnter .22s ease-out both;height:100%;overflow:hidden}.card{background-color:#fff;border:1px solid #666666;border-radius:8px;padding:1.5rem;box-shadow:0 1px 3px #0000001f,0 1px 2px #0000003d}.card .card-title{margin-top:0;margin-bottom:1rem;color:#036;border-bottom:2px solid #0066cc;padding-bottom:.5rem}.card .card-content p:last-child{margin-bottom:0}.alert{padding:1rem 1.5rem;border-radius:4px;margin-bottom:1.5rem;display:flex;align-items:center;justify-content:space-between}.alert.alert-success{background-color:#d4edda;border:1px solid #c3e6cb;color:#155724}.alert.alert-error{background-color:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.alert.alert-warning{background-color:#fff3cd;border:1px solid #ffeeba;color:#856404}.alert.alert-info{background-color:#d1ecf1;border:1px solid #bee5eb;color:#0c5460}.alert .alert-content{flex:1}.alert .alert-content p{margin:0}.alert .alert-close{background:none;border:none;font-size:1.5rem;cursor:pointer;color:inherit;opacity:.7}.alert .alert-close:hover{opacity:1}.badge{display:inline-block;padding:.25rem .5rem;border-radius:12px;font-size:.875rem;font-weight:600}.badge.badge-primary{background-color:#06c;color:#fff}.badge.badge-success{background-color:#28a745;color:#fff}.badge.badge-warning{background-color:#ffc107;color:#333}.badge.badge-danger{background-color:#dc3545;color:#fff}.badge.badge-secondary{background-color:#666;color:#333}.spinner{display:flex;align-items:center;justify-content:center}.spinner.spinner-small .spinner-ring{width:24px;height:24px;border-width:2px}.spinner.spinner-medium .spinner-ring{width:40px;height:40px;border-width:3px}.spinner.spinner-large .spinner-ring{width:60px;height:60px;border-width:4px}.spinner .spinner-ring{border:solid transparent;border-top-color:#06c;border-radius:50%;animation:spin .8s linear infinite}.header{background:linear-gradient(135deg,#036,#00264d);color:#fff;padding:1.5rem 0;padding:0;box-shadow:0 2px 4px #0000001a;position:relative}.header .dev-landing-link{position:fixed;top:6px;left:8px;z-index:1100;font-size:.75rem;color:#fff;background-color:#333333e6;border:1px solid rgba(255,255,255,.3);border-radius:4px;text-decoration:none;padding:.25rem .5rem}.header .dev-landing-link:hover{text-decoration:none;background-color:#333}.header .header-content{display:flex;align-items:center;justify-content:space-between}.header .header-content .header-title h1{color:#fff;margin:0}.header .header-content .header-title .subtitle{margin:0;font-size:.875rem;opacity:.9}.header .header-content .header-nav{display:flex;align-items:center}.header .header-content .header-nav .user-section{display:flex;align-items:center;gap:1rem}.header .header-content .header-nav .user-section .user-email{font-size:.875rem}.header .header-content .header-nav .user-section .logout-button{background-color:#fff3;color:#fff;border:1px solid rgba(255,255,255,.3);padding:.5rem 1rem;border-radius:4px;cursor:pointer;transition:all .3s ease-in-out}.header .header-content .header-nav .user-section .logout-button:hover{background-color:#ffffff4d}@media (max-width: 768px){.header{padding:1rem 0}.header .header-content{flex-direction:column;gap:1rem}.header .header-content .user-section{width:100%;justify-content:space-between}}.main-layout{display:flex;flex-direction:column;min-height:100vh}.main-layout .layout-container{display:flex;flex:1;overflow:hidden}.main-layout .layout-container.simple .sidebar-navigation{display:none}.main-layout .layout-container.simple .layout-content{width:100%}.main-layout .layout-container .sidebar-navigation{width:250px;flex-shrink:0;overflow-y:auto}.main-layout .layout-container .layout-content{flex:1;overflow-y:auto;overflow-x:hidden;scrollbar-gutter:stable;background-color:#fff;padding:0}@media (max-width: 640px){.main-layout .layout-container .layout-content{padding:0}}.main-layout .layout-container .layout-content.full-width{width:100%}.sidebar-navigation{background-color:#f5f5f5;border-right:1px solid #666666;min-height:calc(100vh - 80px);padding:1.5rem 0}.sidebar-navigation .nav-menu{list-style:none;padding:0;margin:0}.sidebar-navigation .nav-menu li{margin:0}.sidebar-navigation .nav-menu li a{display:block;padding:1rem 1.5rem;color:#333;text-decoration:none;transition:all .3s ease-in-out;border-left:4px solid transparent;position:relative}.sidebar-navigation .nav-menu li a:hover{background-color:#fff;border-left-color:#06c}.sidebar-navigation .nav-menu li a.active{background-color:#fff;color:#06c;font-weight:600;border-left-color:#06c}.sidebar-navigation .nav-menu li a .nav-badge{display:inline-block;margin-left:.25rem;background-color:#06c;color:#fff;font-size:.75rem;font-weight:700;padding:2px 8px;border-radius:12px;line-height:1;vertical-align:middle}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.dashboard-container,.updates-page .container,.documents-page .container,.billing-page .container,.tasks-page .container{padding:2rem;max-width:1400px;margin:0 auto}@media (max-width: 640px){.dashboard-container,.updates-page .container,.documents-page .container,.billing-page .container,.tasks-page .container{padding:1.5rem}}.dashboard-container .dashboard-header{display:flex;gap:2rem;margin-bottom:2rem;padding:1.5rem;background-color:#f5f5f5;border-radius:8px}.dashboard-container .dashboard-header .header-stat{flex:1;text-align:left}.dashboard-container .dashboard-header .header-stat[role=button]{cursor:pointer}.dashboard-container .dashboard-header .header-stat[role=button]:focus-visible{outline:3px solid rgba(0,102,204,.35);outline-offset:2px}.dashboard-container .dashboard-header .header-stat .label{display:block;color:#666;font-size:.875rem;margin-bottom:.25rem}.dashboard-container .dashboard-header .header-stat .value{display:block;font-size:2rem;font-weight:700;color:#036}.dashboard-container .dashboard-header .header-stat .stat-link{display:inline-block;margin-top:.25rem;font-size:.875rem;color:#06c;text-decoration:none;font-weight:600;transition:color .2s ease}.dashboard-container .dashboard-header .header-stat .stat-link:hover{color:#036;text-decoration:underline}.dashboard-container .dashboard-header .header-stat .stat-link.urgent-link{color:#fff;background-color:#dc3545;padding:.25rem 1rem;border-radius:4px;font-weight:700;animation:pulse 2s infinite}.dashboard-container .dashboard-header .header-stat .stat-link.urgent-link:hover{background-color:#bd2130;text-decoration:none}.dashboard-container .dashboard-header .header-stat.prominent{background-color:#0066cc1a;border:2px solid #0066cc;border-radius:8px;padding:1rem}.dashboard-container .dashboard-header .header-stat.prominent .label{color:#06c;font-weight:700;font-size:1rem}.dashboard-container .dashboard-header .header-stat.prominent .value{color:#06c;font-size:2.5rem}.dashboard-container .dashboard-header .header-stat.prominent .prominent-link{color:#fff;background-color:#06c;padding:.25rem 1rem;border-radius:4px;font-weight:700}.dashboard-container .dashboard-header .header-stat.prominent .prominent-link:hover{background-color:#004d99;text-decoration:none}.dashboard-container .dashboard-header .header-stat.urgent{background-color:#dc35451a;border:2px solid #dc3545;border-radius:8px;padding:1rem;animation:urgentGlow 2s ease-in-out infinite}.dashboard-container .dashboard-header .header-stat.urgent .label{color:#dc3545;font-weight:700;font-size:1rem}.dashboard-container .dashboard-header .header-stat.urgent .value{color:#dc3545;font-size:2.5rem;animation:shake .5s ease-in-out}@keyframes pulse{0%,to{opacity:1}50%{opacity:.8}}@keyframes urgentGlow{0%,to{box-shadow:0 0 5px #dc35454d}50%{box-shadow:0 0 20px #dc354599}}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-2px)}75%{transform:translate(2px)}}.dashboard-container .matters-filter{display:flex;gap:.5rem;margin-bottom:2rem;border-bottom:2px solid #f5f5f5;padding-bottom:0}.dashboard-container .matters-filter .filter-btn{padding:1rem 1.5rem;background:none;border:none;border-bottom:3px solid transparent;color:#666;cursor:pointer;font-weight:600;font-size:1rem;transition:all .3s ease-in-out}.dashboard-container .matters-filter .filter-btn:hover{color:#036;background-color:#0066cc0d}.dashboard-container .matters-filter .filter-btn.active{color:#036;border-bottom-color:#06c}.dashboard-container .section-header{margin-bottom:1.5rem}.dashboard-container .section-header h2{margin:0 0 1.5rem;color:#036;border-bottom:2px solid #0066cc;padding-bottom:.5rem}.dashboard-container .section-header .section-description{margin:0;color:#666;font-size:.875rem}.dashboard-container .matter-context{margin-top:2rem;padding:1.5rem;background-color:#f5f5f5;border-radius:8px;border-left:4px solid #0066cc}.dashboard-container .matter-context h3{margin-top:0;color:#036}.dashboard-container .matter-context .matter-name{font-weight:600;font-size:1.25rem;margin-bottom:1rem}.dashboard-container .matter-context .matter-info{margin-bottom:.5rem;color:#333}.dashboard-container .matter-context .hint{margin-top:1rem;padding-top:1rem;border-top:1px solid #666666;font-size:.875rem;color:#666;font-style:italic}.dashboard-container .matters-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}@media (max-width: 768px){.dashboard-container .matters-list{grid-template-columns:1fr}}.dashboard-container .matter-card{padding:1.5rem;border:2px solid #666666;border-radius:8px;cursor:pointer;transition:all .3s ease-in-out;background-color:#fff}.dashboard-container .matter-card:hover{border-color:#06c;box-shadow:0 10px 40px #00000029,0 0 0 1px #00000014}.dashboard-container .matter-card.selected{border-color:#06c;background-color:#0066cc0d}.dashboard-container .matter-card .matter-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.dashboard-container .matter-card .matter-header h3{margin:0;color:#036;font-size:1.25rem;flex:1}.dashboard-container .matter-card .matter-header .status-badge{padding:.25rem .5rem;border-radius:12px;font-size:.75rem;font-weight:600;white-space:nowrap}.dashboard-container .matter-card .matter-header .status-badge.status-open{background-color:#28a745;color:#fff}.dashboard-container .matter-card .matter-header .status-badge.status-closed{background-color:#666;color:#fff}.dashboard-container .matter-card .status{color:#333;font-size:.875rem;margin-bottom:1rem}.dashboard-container .matter-card .matter-footer{border-top:1px solid #f5f5f5;padding-top:1rem}.dashboard-container .matter-card .matter-footer .balance{font-weight:600;color:#333;font-size:1rem}.dashboard-page{display:flex;min-height:calc(100vh - 80px)}.dashboard-page .container{flex:1}.dashboard-page .dashboard-content{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}@media (max-width: 1024px){.dashboard-page .dashboard-content{grid-template-columns:1fr}}.dashboard-page .dashboard-content .matters-section .matters-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}.dashboard-page .dashboard-content .matters-section .matters-list .matter-card{padding:1.5rem;border:2px solid #666666;border-radius:8px;cursor:pointer;transition:all .3s ease-in-out}.dashboard-page .dashboard-content .matters-section .matters-list .matter-card:hover{border-color:#06c;box-shadow:0 10px 40px #00000029,0 0 0 1px #00000014}.dashboard-page .dashboard-content .matters-section .matters-list .matter-card.selected{border-color:#06c;background-color:#0066cc0d}.dashboard-page .dashboard-content .matters-section .matters-list .matter-card h3{margin-top:0;color:#036}.dashboard-page .dashboard-content .matters-section .matters-list .matter-card .status{color:#666;font-size:.875rem}.dashboard-page .dashboard-content .matters-section .matters-list .matter-card .balance{font-weight:600;color:#333}.updates-page .subtitle{color:#666;font-size:.875rem;margin-bottom:1.5rem}.updates-page .updates-list{display:flex;flex-direction:column;gap:1.5rem}.updates-page .update-item{padding:1.5rem;border-left:4px solid #0066cc;background-color:#f5f5f5;border-radius:4px}.updates-page .update-item h3{margin-top:0;color:#036}.updates-page .update-item .update-meta{display:flex;gap:1rem;font-size:.875rem;color:#666;margin-top:1rem}.updates-page .update-item .update-meta .author{font-weight:500}.documents-page .upload-section{padding:1.5rem;border:2px dashed #0066cc;border-radius:8px;margin-bottom:2rem;background-color:#0066cc0d}.documents-page .upload-section h3{color:#036;font-size:1.25rem;margin:0 0 1.5rem}.documents-page .upload-section .upload-controls{display:flex;gap:1rem;align-items:flex-end}@media (max-width: 640px){.documents-page .upload-section .upload-controls{flex-direction:column;align-items:stretch}.documents-page .upload-section .upload-controls .matter-select,.documents-page .upload-section .upload-controls .btn{width:100%}}.documents-page .upload-section .upload-controls .matter-select{flex:1;padding:1rem;border:1px solid #666666;border-radius:4px;font-size:1rem;color:#333;background-color:#fff;transition:all .3s ease-in-out}.documents-page .upload-section .upload-controls .matter-select:hover{border-color:#06c}.documents-page .upload-section .upload-controls .matter-select:focus{outline:none;border-color:#06c;box-shadow:0 0 0 3px #0066cc1a}.documents-page .upload-section .upload-controls .matter-select:disabled{background-color:#f5f5f5;color:#666;cursor:not-allowed}.documents-page .upload-section .hidden-file-input{display:none}.documents-page .documents-grid{display:grid;gap:1.5rem}.documents-page .documents-grid .document-item{display:flex;align-items:center;justify-content:space-between;padding:1rem;border:1px solid #666666;border-radius:4px;background-color:#fff;transition:all .3s ease-in-out}.documents-page .documents-grid .document-item:hover{box-shadow:0 1px 3px #0000001f,0 1px 2px #0000003d}.documents-page .documents-grid .document-item .document-info{flex:1}.documents-page .documents-grid .document-item .document-info .document-name{font-weight:600;color:#333;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-bottom:.5rem}.documents-page .documents-grid .document-item .document-info .document-meta{font-size:.875rem;color:#666;display:flex;gap:.5rem;align-items:center}.documents-page .documents-grid .document-item .document-info .document-meta .separator{opacity:.5}.documents-page .documents-grid .document-item .document-info .document-meta .badge-client{display:inline-block;padding:.25rem .5rem;background-color:#0066cc1a;color:#06c;border-radius:4px;font-size:.75rem;font-weight:600}.documents-page .documents-grid .document-item .document-actions{display:flex;gap:.5rem;margin-left:1rem}.documents-page .documents-grid .document-item .document-actions .btn-download{padding:.5rem 1rem;background-color:#06c;color:#fff;border:none;border-radius:4px;cursor:pointer;font-weight:500;transition:all .3s ease-in-out}.documents-page .documents-grid .document-item .document-actions .btn-download:hover{background-color:#004d99}.billing-page .billing-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-bottom:3rem}.billing-page .billing-summary .summary-card{padding:1.5rem;background:linear-gradient(135deg,#06c,#0059b3);color:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001f,0 1px 2px #0000003d}.billing-page .billing-summary .summary-card h3{margin:0 0 .5rem;font-size:1rem}.billing-page .billing-summary .summary-card .amount{margin:0;font-size:2rem;font-weight:700}.billing-page .tabs{display:flex;gap:1rem;border-bottom:2px solid #666666;margin-bottom:1.5rem}.billing-page .tabs .tab-button{padding:1rem 1.5rem;background:none;border:none;color:#666;cursor:pointer;font-weight:500;border-bottom:3px solid transparent;transition:all .3s ease-in-out}.billing-page .tabs .tab-button:hover{color:#036}.billing-page .tabs .tab-button.active{color:#06c;border-bottom-color:#06c}.billing-page .billing-section{margin-bottom:3rem}.billing-page .billing-section h2{margin:0 0 1.5rem;color:#036;border-bottom:2px solid #0066cc;padding-bottom:.5rem}.billing-page .billing-section .section-header-with-action{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.billing-page .billing-section .section-header-with-action h2{margin:0;flex:1;border:none;padding:0}.billing-page .billing-section .section-header-with-action .btn{white-space:nowrap;margin-left:1.5rem}.billing-page .billing-section .billing-table{width:100%;border-collapse:collapse}.billing-page .billing-section .billing-table .btn-sm{padding:.25rem 1rem;font-size:.875rem;line-height:1.2}.billing-page .billing-section .billing-table th:first-child,.billing-page .billing-section .billing-table td:first-child{white-space:nowrap}.billing-page .billing-section .billing-table th,.billing-page .billing-section .billing-table td{padding:1rem;text-align:left;border-bottom:1px solid #666666}.billing-page .billing-section .billing-table th{background-color:#f5f5f5;font-weight:600;color:#036}.billing-page .billing-section .billing-table tbody tr:hover{background-color:#f5f5f5}.billing-page .billing-section .billing-table .status-badge{display:inline-block;padding:.25rem .5rem;border-radius:4px;font-size:.875rem;font-weight:600}.billing-page .billing-section .billing-table .status-badge.status-open{background-color:#fff3cd;color:#856404}.billing-page .billing-section .billing-table .status-badge.status-paid{background-color:#d4edda;color:#155724}.billing-page .billing-section .billing-table .status-badge.status-closed{background-color:#f5f5f5;color:#333}.billing-page .billing-section .billing-table .status-badge.status-applied{background-color:#d4edda;color:#155724}.billing-page .billing-section .billing-table .status-badge.status-pending-reconciliation{background-color:#e2e3e5;color:#383d41}.billing-page .billing-section .billing-table .status-badge.status-available{background-color:#d4edda;color:#155724}.billing-page .billing-section .billing-table .status-badge.status-requested{background-color:#d1ecf1;color:#0c5460}.billing-page .billing-section .billing-table .status-badge.status-paid-pending-reconciliation{background-color:#fff3cd;color:#856404}.billing-page .billing-section .billing-table .status-badge.status-depleted{background-color:#f8d7da;color:#721c24}.tasks-page .tasks-filter{display:flex;gap:.5rem;margin-bottom:2rem;border-bottom:2px solid #f5f5f5;padding-bottom:0}.tasks-page .tasks-filter .filter-btn{padding:1rem 1.5rem;background:none;border:none;border-bottom:3px solid transparent;color:#666;cursor:pointer;font-weight:600;font-size:1rem;transition:all .3s ease-in-out}.tasks-page .tasks-filter .filter-btn:hover{color:#036;background-color:#0066cc0d}.tasks-page .tasks-filter .filter-btn.active{color:#036;border-bottom-color:#06c}.tasks-page .tasks-table-wrapper{overflow-x:auto;background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001f,0 1px 2px #0000003d}.tasks-page .tasks-table{width:100%;border-collapse:collapse}.tasks-page .tasks-table thead{background-color:#036}.tasks-page .tasks-table thead th{padding:1rem 1.5rem;text-align:left;font-weight:600;color:#036;color:#fff;border-bottom:2px solid #666666;white-space:nowrap}.tasks-page .tasks-table tbody tr{border-bottom:1px solid #f5f5f5;transition:background-color .3s ease-in-out}.tasks-page .tasks-table tbody tr:hover{background-color:#0066cc05}.tasks-page .tasks-table tbody tr.overdue{background-color:#dc35450d}.tasks-page .tasks-table tbody tr td{padding:1rem 1.5rem;vertical-align:middle}.tasks-page .tasks-table tbody tr td .task-title-cell{display:flex;flex-direction:column;gap:.25rem}.tasks-page .tasks-table tbody tr td .task-title-cell strong{color:#036;font-weight:600}.tasks-page .tasks-table tbody tr td .task-title-cell .task-description-small{font-size:.875rem;color:#666;line-height:1.4}.tasks-page .tasks-table tbody tr td .overdue-date{color:#dc3545;font-weight:600}.tasks-page .tasks-table tbody tr td .status-badge{display:inline-block;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:600;white-space:nowrap}.tasks-page .tasks-table tbody tr td .status-badge.status-open{background-color:#ffc10733;color:#a07800}.tasks-page .tasks-table tbody tr td .status-badge.status-submitted{background-color:#06c3;color:#004d99}.tasks-page .tasks-table tbody tr td .status-badge.status-completed{background-color:#28a74533;color:#19692c}.tasks-page .tasks-table tbody tr td.actions-cell{white-space:nowrap}.tasks-page .task-button-sm{padding:.25rem 1rem;background-color:#06c;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.875rem;font-weight:500;white-space:nowrap;transition:all .3s ease-in-out}.tasks-page .task-button-sm:hover:not(:disabled){background-color:#004d99}.tasks-page .task-button-sm:disabled{opacity:.6;cursor:not-allowed}.tasks-page .task-button-sm.review{background-color:#fff;color:#06c;border:1px solid #0066cc}.tasks-page .task-button-sm.review:hover{background-color:#0066cc1a}.tasks-page .task-button-sm.approve{background-color:#28a745}.tasks-page .task-button-sm.approve:hover{background-color:#1e7e34}.tasks-page .task-actions-inline{display:flex;gap:.25rem}.tasks-page .file-input-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.tasks-page .task-status-badge{display:inline-block;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:600;background-color:#28a74533;color:#19692c}.tasks-page .no-tasks{text-align:center;color:#666;padding:3rem;font-style:italic}.tasks-page .tasks-section{display:none}.review-files-modal{max-width:800px;width:90%;max-height:80vh}.review-files-modal .modal-body{max-height:60vh;overflow-y:auto}.review-files-modal .file-explorer-tree .folder-node,.review-files-modal .file-explorer-tree .file-node{padding:.5rem 1rem;margin:.25rem 0}.review-files-modal .file-explorer-tree .folder-node.level-0,.review-files-modal .file-explorer-tree .file-node.level-0{padding-left:1rem}.review-files-modal .file-explorer-tree .folder-node.level-1,.review-files-modal .file-explorer-tree .file-node.level-1{padding-left:2rem}.review-files-modal .file-explorer-tree .folder-node.level-2,.review-files-modal .file-explorer-tree .file-node.level-2{padding-left:3.5rem}.review-files-modal .file-explorer-tree .folder-header{display:flex;align-items:center;gap:.5rem;cursor:pointer;padding:.25rem;border-radius:4px}.review-files-modal .file-explorer-tree .folder-header:hover{background-color:#0066cc0d}.review-files-modal .file-explorer-tree .folder-header .folder-icon{font-size:1.25rem}.review-files-modal .file-explorer-tree .folder-header .folder-name{font-weight:600;color:#036}.review-files-modal .file-explorer-tree .folder-header .folder-count{color:#666;font-size:.875rem}.review-files-modal .file-explorer-tree .folder-children{margin-left:1rem}.review-files-modal .file-explorer-tree .file-node{display:flex;align-items:center;gap:.5rem;padding:.5rem;border-radius:4px}.review-files-modal .file-explorer-tree .file-node:hover{background-color:#0066cc0d}.review-files-modal .file-explorer-tree .file-node .file-icon{font-size:1.25rem}.review-files-modal .file-explorer-tree .file-node .file-info{flex:1;display:flex;flex-direction:column}.review-files-modal .file-explorer-tree .file-node .file-info .file-name{color:#333;font-weight:500}.review-files-modal .file-explorer-tree .file-node .file-info .file-meta{font-size:.75rem;color:#666;margin-top:.25rem}.review-files-modal .file-explorer-tree .file-node .download-btn{padding:.25rem 1rem;background-color:#06c;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.875rem;transition:all .3s ease-in-out}.review-files-modal .file-explorer-tree .file-node .download-btn:hover{background-color:#004d99}.review-files-modal .no-documents{text-align:center;color:#666;padding:2rem;font-style:italic}.access-resolution-page{display:flex;align-items:center;justify-content:center;min-height:100vh;background-color:#f5f5f5}.access-resolution-page .loading,.access-resolution-page .access-denied,.access-resolution-page .temporary-issue{background-color:#fff;padding:3rem;border-radius:8px;box-shadow:0 10px 40px #00000029,0 0 0 1px #00000014;text-align:center;max-width:500px}.access-resolution-page .loading h2,.access-resolution-page .access-denied h2,.access-resolution-page .temporary-issue h2{color:#036}.access-resolution-page .loading p,.access-resolution-page .access-denied p,.access-resolution-page .temporary-issue p{color:#666}.access-resolution-page .loading button,.access-resolution-page .access-denied button,.access-resolution-page .temporary-issue button{margin-top:1.5rem;padding:1rem 1.5rem;background-color:#06c;color:#fff;border:none;border-radius:4px;cursor:pointer;transition:all .3s ease-in-out}.access-resolution-page .loading button:hover,.access-resolution-page .access-denied button:hover,.access-resolution-page .temporary-issue button:hover{background-color:#004d99}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1.5rem}.modal-content{background-color:#fff;border-radius:8px;box-shadow:0 10px 40px #00000029,0 0 0 1px #00000014;max-width:680px;width:100%;max-height:90vh;overflow-y:auto}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:2rem;border-bottom:1px solid #f5f5f5}.modal-header h2{margin:0;color:#036}.modal-header .close-button{background:none;border:none;font-size:2rem;color:#666;cursor:pointer;padding:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;transition:color .3s ease-in-out}.modal-header .close-button:hover{color:#333}.modal-body{padding:2rem}.modal-body .payment-form{display:flex;flex-direction:column;gap:1.5rem}.modal-body .invoice-details{background-color:#f5f5f5;padding:1.5rem;border-radius:8px;margin-bottom:2rem}.modal-body .invoice-details p{margin:.5rem 0;color:#333}.modal-body .invoice-details p strong{color:#036}.modal-body .form-group{margin-bottom:0}.modal-body .form-group label{display:block;margin-bottom:.25rem;font-weight:600;color:#036}.modal-body .form-group input{width:100%;height:46px;box-sizing:border-box;padding:0 1rem;border:1px solid #666666;border-radius:4px;font-size:1rem;line-height:1.25;transition:border-color .3s ease-in-out}.modal-body .form-group input:focus{outline:none;border-color:#06c}.modal-body .payment-amount-options{margin-bottom:0}.modal-body .payment-amount-options label{display:block;margin-bottom:1rem;font-weight:600;color:#036}.modal-body .amount-option-buttons{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;margin-bottom:0}.modal-body .amount-option-btn{padding:1rem;border:2px solid #666666;border-radius:8px;background-color:#fff;cursor:pointer;transition:all .3s ease-in-out;font-weight:600;color:#036;display:flex;flex-direction:column;align-items:center;gap:.5rem}.modal-body .amount-option-btn:hover{border-color:#06c;background-color:#0066cc0d}.modal-body .amount-option-btn.active{border-color:#06c;background-color:#0066cc1a;color:#06c}.modal-body .amount-option-btn .amount-value{font-size:.875rem;color:inherit;font-weight:700}.modal-body .amount-display{padding:1rem;background-color:#f5f5f5;border:1px solid #666666;border-radius:4px;font-size:1.25rem;font-weight:700;color:#06c;text-align:center}.modal-body .payment-note{padding:1rem;background-color:#fff3cd;border:1px solid #ffc107;border-radius:4px;color:#856404;margin-bottom:1.5rem;font-size:.875rem}.modal-body .payment-note strong{font-weight:600}.modal-body .lawpay-panel{padding:1.5rem;background-color:#0066cc0f;border:1px solid rgba(0,102,204,.2);border-radius:8px;margin-bottom:2rem}.modal-body .lawpay-panel h3{margin:0 0 .5rem;color:#036;font-size:1.25rem}.modal-body .lawpay-panel p{margin:0 0 1rem;color:#333;line-height:1.6}.modal-body .lawpay-panel ul{margin:0;padding-left:1.5rem;color:#333}.modal-body .lawpay-panel li+li{margin-top:.25rem}.modal-body .hosted-fields-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:1.5rem;margin-bottom:0}@media (max-width: 640px){.modal-body .hosted-fields-grid{grid-template-columns:1fr}}.modal-body .hosted-field-group.hosted-field-group--wide{grid-column:auto}@media (max-width: 640px){.modal-body .hosted-field-group.hosted-field-group--wide{grid-column:1/-1}}.modal-body .hosted-field-frame{min-height:46px;height:46px;box-sizing:border-box;padding:0 .5rem;border:1px solid #666666;border-radius:4px;background-color:#fff;display:flex;align-items:center;transition:border-color .3s ease-in-out}.modal-body .hosted-field-frame iframe{width:100%;height:100%;border:0}.modal-body .hosted-field-frame.is-focused{border-color:#06c;box-shadow:0 0 0 3px #0066cc1a}.modal-body .hosted-field-frame.has-error{border-color:#dc3545}.modal-body .hosted-field-frame.is-tokenized{border-color:#28a745}.modal-body .hosted-field-error{margin:.25rem 0 0;color:#dc3545;font-size:.875rem;font-weight:500}.modal-body .lawpay-status-row{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:0}@media (max-width: 640px){.modal-body .lawpay-status-row{flex-direction:column;align-items:flex-start}}.modal-body .lawpay-status{font-size:.875rem;font-weight:600}.modal-body .lawpay-status.is-ready{color:#28a745}.modal-body .lawpay-status.is-pending{color:#666}.modal-body .lawpay-card-brand{font-size:.875rem;color:#036;text-transform:capitalize}.modal-body .form-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem}@media (max-width: 640px){.modal-body .form-row{grid-template-columns:1fr}}.modal-footer{display:flex;justify-content:flex-end;gap:1rem;margin-top:2rem;padding-top:1.5rem;border-top:1px solid #f5f5f5}.payment-modal{border-radius:12px;border:1px solid rgba(0,51,102,.12);box-shadow:0 18px 48px #001c3833}.payment-modal .modal-header{padding:1.5rem 2rem;border-bottom:1px solid rgba(0,51,102,.08)}.payment-modal .modal-header h2{font-size:1.35rem;letter-spacing:.02em;font-weight:700}.payment-modal .modal-header .close-button{width:36px;height:36px;border-radius:50%}.payment-modal .modal-header .close-button:hover{background-color:#0033660f}.payment-modal .modal-body{background:linear-gradient(180deg,#f8fafc,#f3f6f9);padding:1.5rem 2rem}.payment-modal .modal-body .payment-form{gap:1rem}.payment-modal .modal-body .invoice-details,.payment-modal .modal-body .lawpay-panel,.payment-modal .modal-body .payment-amount-options{margin:0;padding:1rem 1.5rem;border:1px solid rgba(0,51,102,.1);border-radius:10px;background-color:#fff}.payment-modal .modal-body .invoice-details p,.payment-modal .modal-body .lawpay-panel p,.payment-modal .modal-body .lawpay-panel li{font-size:.94rem;line-height:1.45}.payment-modal .modal-body .lawpay-panel h3{margin-bottom:.25rem;font-size:1rem;letter-spacing:.01em}.payment-modal .modal-body .form-group label{margin-bottom:.35rem;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:#003366c7}.payment-modal .modal-body .form-group input{background-color:#fbfdff;border:1px solid rgba(0,51,102,.22);border-radius:6px;font-size:.95rem}.payment-modal .modal-body .form-group input:hover{border-color:#00336659}.payment-modal .modal-body .form-group input:focus{border-color:#06c;box-shadow:0 0 0 3px #0066cc1f}.payment-modal .modal-body .hosted-field-frame{border-radius:6px;border:1px solid rgba(0,51,102,.22);background-color:#fbfdff}.payment-modal .modal-body .hosted-field-frame:hover{border-color:#00336659}.payment-modal .modal-body .amount-option-buttons{gap:.5rem}.payment-modal .modal-body .amount-option-btn{border-width:1px;border-color:#0363;border-radius:6px;padding:.5rem 1rem;min-height:72px;justify-content:center}.payment-modal .modal-body .amount-option-btn.active{border-color:#06c;box-shadow:inset 0 0 0 1px #0066cc40}.payment-modal .modal-body .amount-display{border-radius:6px;border-color:#0363;background-color:#f8fbff;font-size:1.1rem}.payment-modal .modal-body .hosted-fields-grid,.payment-modal .modal-body .form-row{gap:1rem}.payment-modal .modal-body .lawpay-status-row{padding:.5rem 1rem;border-radius:6px;background-color:#0033660a;border:1px solid rgba(0,51,102,.1)}.payment-modal .modal-footer{margin-top:1.5rem;padding:1rem 2rem 1.5rem;border-top:1px solid rgba(0,51,102,.08);background-color:#ffffffeb}.payment-modal .modal-footer .btn{min-height:42px;padding:.55rem 1.1rem;border-radius:6px;font-weight:700;letter-spacing:.02em}.matters-table{width:100%;border-collapse:collapse;background-color:#fff;border-radius:8px;overflow:hidden;box-shadow:0 1px 3px #0000001f,0 1px 2px #0000003d}.matters-table thead{background-color:#036;color:#fff}.matters-table thead th{text-align:left;padding:1rem 1.5rem;font-weight:600;font-size:.875rem;text-transform:uppercase;letter-spacing:.5px}.matters-table tbody tr{border-bottom:1px solid #f5f5f5;transition:background-color .3s ease-in-out}.matters-table tbody tr:hover{background-color:#0066cc0d}.matters-table tbody tr:last-child{border-bottom:none}.matters-table tbody td{padding:1rem 1.5rem;color:#333}.matters-table tbody td strong{color:#036;font-size:1rem}.matters-table tbody td .matter-status-text{font-size:.875rem;color:#666;margin-top:.25rem;display:block}.matters-table tbody td.amount{font-weight:600;color:#036;text-align:center}.matters-table tbody td .status-badge{padding:.25rem .5rem;border-radius:12px;font-size:.75rem;font-weight:600;white-space:nowrap;display:inline-block}.matters-table tbody td .status-badge.status-open{background-color:#28a745;color:#fff}.matters-table tbody td .status-badge.status-closed{background-color:#666;color:#fff}.file-explorer{background-color:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001f,0 1px 2px #0000003d;overflow:hidden}.file-explorer .file-explorer-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem;background-color:#f5f5f5;border-bottom:2px solid #666666}.file-explorer .file-explorer-header h3{margin:0;color:#036;font-size:1.25rem}.file-explorer .file-explorer-tree{padding:1rem;max-height:calc(100vh - 300px);overflow-y:auto}.file-explorer .folder-node{margin-bottom:.25rem}.file-explorer .folder-node .folder-header{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;cursor:pointer;border-radius:4px;transition:background-color .3s ease-in-out}.file-explorer .folder-node .folder-header:hover{background-color:#0066cc1a}.file-explorer .folder-node .folder-header.expanded{background-color:#0066cc0d}.file-explorer .folder-node .folder-header .folder-icon{font-size:1.25rem}.file-explorer .folder-node .folder-header .folder-name{flex:1;font-weight:600;color:#036}.file-explorer .folder-node .folder-header .expand-icon{font-size:.75rem;color:#666}.file-explorer .folder-node .folder-children{margin-left:1rem;animation:fadeIn .2s ease-in}.file-explorer .file-node{display:flex;align-items:center;justify-content:space-between;padding:.5rem 1rem;margin-bottom:.25rem;border-radius:4px;transition:background-color .3s ease-in-out}.file-explorer .file-node:hover{background-color:#0066cc0d}.file-explorer .file-node .file-info{display:flex;align-items:center;gap:.5rem;flex:1;min-width:0}.file-explorer .file-node .file-info .file-icon{font-size:1.25rem;flex-shrink:0}.file-explorer .file-node .file-info .file-details{flex:1;min-width:0}.file-explorer .file-node .file-info .file-details .file-name{color:#333;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-explorer .file-node .file-info .file-details .file-meta{display:flex;align-items:center;gap:.25rem;font-size:.75rem;color:#666;margin-top:2px}.file-explorer .file-node .file-info .file-details .file-meta .separator{margin:0 .25rem}.file-explorer .file-node .file-info .file-details .file-meta .uploaded-by-you{color:#06c;font-weight:600}.file-explorer .file-node .file-actions{display:flex;gap:.25rem;flex-shrink:0}.file-explorer .file-node .file-actions .btn-icon{background:none;border:none;padding:.25rem;cursor:pointer;border-radius:4px;font-size:1rem;transition:all .3s ease-in-out}.file-explorer .file-node .file-actions .btn-icon:hover{background-color:#0066cc1a;transform:scale(1.1)}.file-explorer .empty-state{text-align:center;padding:3rem;color:#666}.file-explorer .empty-state p{font-size:1.25rem;margin-bottom:1.5rem}.file-explorer .empty-state button{margin-top:1rem}.documents-page .container{padding:2rem;max-width:1400px;margin:0 auto}@media (max-width: 640px){.documents-page .container{padding:1.5rem}}.documents-page .container .page-heading{margin-bottom:1.5rem}.documents-page .container .page-heading h2{color:#036;font-size:2rem;margin:0 0 .25rem}.documents-page .container .page-heading p{color:#666;margin:0;font-size:.875rem}.documents-page .container .empty-state{text-align:center;padding:3rem;background-color:#f5f5f5;border-radius:8px;margin-top:2rem}.documents-page .container .empty-state p{color:#666;font-size:1.25rem}.documents-page .container .loading{padding:.5rem 1rem;min-height:28px;display:flex;align-items:center;color:#666;font-size:1rem}.documents-page .container .empty-folder{padding:.5rem 1rem;min-height:28px;display:flex;align-items:center;color:#666;font-size:1rem;font-style:italic}.documents-page .file-explorer{height:calc(100vh - 270px);min-height:300px;display:flex;flex-direction:column;overflow:hidden}.documents-page .file-explorer .file-explorer-tree{flex:1;overflow-y:auto;min-height:0;padding:1rem}.documents-page .file-explorer .folder-upload-bar{flex-shrink:0}.documents-page .file-explorer .folder-upload-bar .folder-actions{display:flex;gap:.5rem;align-items:center}.documents-page .file-explorer .folder-upload-bar .folder-actions .btn{padding:6px 1rem;font-size:.875rem;white-space:nowrap;line-height:1.5}.folder-header.level-0{padding-left:0}.folder-header.level-1{padding-left:20px}.folder-header.level-2{padding-left:40px}.folder-header.level-3{padding-left:60px}.folder-header.level-4{padding-left:80px}.file-node.level-0{padding-left:20px}.file-node.level-1{padding-left:40px}.file-node.level-2{padding-left:60px}.file-node.level-3{padding-left:80px}.file-node.level-4{padding-left:100px}.hidden-file-input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.file-explorer-header .matter-select{padding:.5rem 1rem;border:1px solid #666666;border-radius:4px;background-color:#fff;color:#036;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .3s ease-in-out}.file-explorer-header .matter-select:hover{border-color:#06c;background-color:#0066cc0d}.file-explorer-header .matter-select:focus{outline:none;border-color:#06c;box-shadow:0 0 0 3px #0066cc1a}.file-explorer-header .matter-select option{padding:.5rem}.updates-modal-content{max-width:800px;max-height:80vh}.updates-modal-body{max-height:calc(80vh - 100px);overflow-y:auto;padding:2rem}.updates-list{display:flex;flex-direction:column;gap:1.5rem}.updates-list .update-item{background-color:#f5f5f5;padding:1.5rem;border-radius:8px;border-left:4px solid #0066cc;transition:all .3s ease-in-out}.updates-list .update-item:hover{box-shadow:0 1px 3px #0000001f,0 1px 2px #0000003d}.updates-list .update-item .update-title{margin:0 0 1rem;color:#036;font-size:1.25rem;font-weight:600}.updates-list .update-item .update-content{margin:0 0 1rem;color:#333;line-height:1.6;white-space:pre-wrap}.updates-list .update-item .update-meta{display:flex;justify-content:space-between;align-items:center;padding-top:1rem;border-top:1px solid #666666;font-size:.875rem}.updates-list .update-item .update-meta .update-author{color:#036;font-weight:600}.updates-list .update-item .update-meta .update-date{color:#666}.updates-modal-body .empty-state{text-align:center;padding:3rem;color:#666}.updates-modal-body .empty-state p{font-size:1.25rem;margin:0}.updates-modal-body .loading{text-align:center;padding:3rem;color:#666;font-size:1.25rem}.matters-table tbody tr{cursor:pointer;-webkit-user-select:none;user-select:none}.last-updated-cell{display:flex;align-items:center;justify-content:space-between;gap:1rem}.last-updated-cell .updates-badge{padding:.25rem .5rem;background-color:#06c;color:#fff;border:none;border-radius:12px;font-size:.75rem;font-weight:600;cursor:pointer;white-space:nowrap;transition:all .3s ease-in-out}.last-updated-cell .updates-badge:hover{background-color:#004d99;transform:scale(1.05);box-shadow:0 1px 3px #0000001f,0 1px 2px #0000003d}.last-updated-cell .updates-badge:active{transform:scale(.98)}.login-page{display:flex;align-items:center;justify-content:center;align-items:flex-start;min-height:100vh;background:linear-gradient(135deg,#036,#001a33,#06c);padding:1.5rem;position:relative;overflow:hidden}.login-page:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 20% 50%,rgba(0,102,204,.1) 0%,transparent 50%),radial-gradient(circle at 80% 80%,rgba(255,255,255,.05) 0%,transparent 50%);pointer-events:none}.login-page .login-layout{width:100%;max-width:980px;display:flex;align-items:flex-start;justify-content:flex-start;gap:2rem;position:relative;z-index:1}.login-page .dev-login-instructions{width:100%;max-width:420px;margin-top:.5rem;padding:1rem;border:2px solid rgba(220,53,69,.55);border-radius:8px;background:#fffffff7;color:#333;box-shadow:0 10px 24px #00000026}.login-page .dev-login-instructions .dev-login-title{font-size:.875rem;font-weight:700;letter-spacing:.4px;margin-bottom:.5rem;text-transform:uppercase;color:#a71d2a}.login-page .dev-login-instructions ul{margin:0 0 .5rem 1rem;padding:0}.login-page .dev-login-instructions ul li{margin-bottom:.25rem;font-size:.875rem}.login-page .dev-login-instructions p{margin:0;font-size:.875rem}.login-page .dev-login-instructions code{background-color:#0066cc1a;border-radius:4px;padding:2px 6px;font-size:.75rem;color:#036}.login-container{background-color:#fff;padding:3rem;border-radius:16px;box-shadow:0 10px 40px #00000029,0 0 0 1px #00000014;width:100%;max-width:420px;position:relative;z-index:1;border:1px solid rgba(0,102,204,.1);box-shadow:0 20px 60px #00336626,0 0 80px #0066cc0d}.login-container .login-branding{text-align:center;margin-bottom:3rem}.login-container .login-branding .logo-placeholder{width:60px;height:60px;margin:0 auto 1.5rem;background:linear-gradient(135deg,#036,#06c);color:#fff;border-radius:12px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:2rem;box-shadow:0 10px 25px #06c3}.login-container .login-branding h1{color:#036;font-size:2rem;margin:0 0 .25rem;font-weight:700;letter-spacing:-.5px}.login-container .login-branding .subtitle{color:#666;font-size:1rem;margin:0;font-weight:500}.login-container form{display:flex;flex-direction:column}.login-container form .form-group{display:flex;flex-direction:column;margin-bottom:1.5rem}.login-container form .form-group label{font-weight:600;margin-bottom:.5rem;color:#333;font-size:.875rem;text-transform:uppercase;letter-spacing:.3px}.login-container form .form-group input{padding:1rem;border:2px solid #f5f5f5;border-radius:8px;font-size:1rem;background-color:#fff;color:#333;transition:all .3s ease;font-family:inherit}.login-container form .form-group input::placeholder{color:#666;opacity:.6}.login-container form .form-group input:focus{outline:none;border-color:#06c;box-shadow:0 0 0 4px #0066cc14,inset 0 1px 3px #0000000d;background-color:#0066cc05}.login-container form .form-group input:disabled{background-color:#f5f5f5;color:#666;cursor:not-allowed}.login-container form .form-group .help-text{font-size:.875rem;color:#666;margin-top:.5rem;line-height:1.5}.login-container form .form-group .help-text strong{color:#333;font-weight:600}.login-container form .btn-primary{padding:1.5rem;font-weight:600;font-size:1rem;margin-top:1.5rem;background:linear-gradient(135deg,#06c,#0059b3);color:#fff;border:none;border-radius:8px;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:.25rem;box-shadow:0 8px 20px #0066cc40}.login-container form .btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#0059b3,#004d99);box-shadow:0 12px 28px #0066cc59;transform:translateY(-2px)}.login-container form .btn-primary:active:not(:disabled){transform:translateY(0);box-shadow:0 4px 12px #06c3}.login-container form .btn-primary:disabled{opacity:.6;cursor:not-allowed;box-shadow:0 4px 12px #0066cc1a}.login-container form .btn-primary .spinner{display:inline-block;width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite}.login-container form .btn-secondary{padding:1rem 1.5rem;font-weight:500;font-size:1rem;margin-top:1rem;background-color:transparent;color:#06c;border:2px solid #f5f5f5;border-radius:8px;cursor:pointer;transition:all .3s ease}.login-container form .btn-secondary:hover:not(:disabled){border-color:#06c;background-color:#0066cc0d;color:#06c}.login-container form .btn-secondary:disabled{opacity:.5;cursor:not-allowed}.login-container form .login-divider{text-align:center;margin:1.5rem 0;color:#666;font-size:.875rem;position:relative}.login-container form .login-divider:before,.login-container form .login-divider:after{content:"";position:absolute;top:50%;width:35%;height:1px;background-color:#f5f5f5}.login-container form .login-divider:before{left:0}.login-container form .login-divider:after{right:0}.login-container .error-message{padding:1rem;background-color:#dc354514;border:1.5px solid rgba(220,53,69,.3);border-radius:8px;color:#a71d2a;margin-bottom:1.5rem;display:flex;align-items:flex-start;gap:1rem;font-size:.875rem;font-weight:500}.login-container .error-message .error-icon{flex-shrink:0;font-size:1.25rem}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width: 768px){.login-page .login-layout{flex-direction:column;align-items:center;gap:1.5rem}.login-page .dev-login-instructions{max-width:90vw;margin-top:0}.login-container{margin:1.5rem;padding:2rem;max-width:90vw}.login-container .login-branding{margin-bottom:2rem}.login-container .login-branding .logo-placeholder{width:50px;height:50px;margin-bottom:1rem;font-size:1.5rem}.login-container .login-branding h1{font-size:1.5rem}}.profile-page{padding-bottom:3rem}.profile-page .container{padding:2rem;max-width:900px;margin:0 auto}.profile-page .success-message{padding:1.5rem;background-color:#28a74514;border:1.5px solid rgba(40,167,69,.3);border-radius:8px;color:#19692c;margin-bottom:2rem;display:flex;align-items:center;gap:1rem;font-size:.875rem;font-weight:500;animation:slideDown .3s ease-out}.profile-page .success-message .success-icon{flex-shrink:0;font-size:1.25rem;font-weight:700}.profile-page .profile-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:3rem;gap:2rem}@media (max-width: 768px){.profile-page .profile-header{flex-direction:column;align-items:stretch}}.profile-page .profile-header .profile-title{flex:1}.profile-page .profile-header .profile-title h2{margin:0 0 .5rem;color:#036;font-size:2rem}.profile-page .profile-header .profile-title .subtitle{margin:0;color:#666;font-size:1rem}.profile-page .profile-header .btn{white-space:nowrap}.profile-page .profile-content{min-height:400px}.profile-page .profile-section{background-color:#fff;padding:2rem;border-radius:8px;border:1px solid #f5f5f5;margin-bottom:2rem;box-shadow:0 1px 3px #0000001f,0 1px 2px #0000003d}.profile-page .profile-section .section-header{margin-bottom:1.5rem}.profile-page .profile-section .section-header h3{margin:0;color:#036;font-size:1.25rem;font-weight:600}.profile-page .profile-section .form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:1.5rem}.profile-page .profile-section .form-grid:last-child{margin-bottom:0}.profile-page .profile-section .form-grid .form-group.full-width{grid-column:1/-1}.profile-page .profile-section .form-group{display:flex;flex-direction:column}.profile-page .profile-section .form-group label{font-weight:600;margin-bottom:.5rem;color:#333;font-size:.875rem}.profile-page .profile-section .form-group input{padding:1rem;border:2px solid #f5f5f5;border-radius:6px;font-size:1rem;background-color:#fff;color:#333;transition:all .3s ease;font-family:inherit}.profile-page .profile-section .form-group input::placeholder{color:#666;opacity:.6}.profile-page .profile-section .form-group input:focus{outline:none;border-color:#06c;box-shadow:0 0 0 4px #0066cc14;background-color:#0066cc05}.profile-page .profile-section .form-group input:disabled{background-color:#f5f5f5;color:#333;cursor:not-allowed;border-color:#f5f5f5}.profile-page .profile-actions{display:flex;gap:1.5rem;justify-content:flex-start;margin-top:2rem;padding:1.5rem;background-color:#f5f5f5;border-radius:8px}.profile-page .profile-actions .btn:disabled{opacity:.6;cursor:not-allowed}.document-sharing-page .container{padding:2rem;max-width:1400px;margin:0 auto}@media (max-width: 640px){.document-sharing-page .container{padding:1.5rem}}.document-sharing-page .section-header{margin-bottom:2rem}.document-sharing-page .section-header h2{color:#036;font-size:2rem;margin:0 0 .5rem;padding-bottom:1rem;border-bottom:2px solid #0066cc}.document-sharing-page .section-header p{color:#666;margin:.5rem 0 0}.document-sharing-page .upload-section{padding:1.5rem;border:2px dashed #0066cc;border-radius:8px;margin-bottom:2rem;background-color:#0066cc0d}.document-sharing-page .upload-section h3{color:#036;font-size:1.25rem;margin:0 0 1.5rem}.document-sharing-page .upload-section .upload-controls{display:flex;gap:1rem;align-items:flex-end}@media (max-width: 640px){.document-sharing-page .upload-section .upload-controls{flex-direction:column;align-items:stretch}.document-sharing-page .upload-section .upload-controls .matter-select,.document-sharing-page .upload-section .upload-controls .btn{width:100%}}.document-sharing-page .upload-section .upload-controls .matter-select{flex:1;padding:1rem;border:1px solid #666666;border-radius:4px;font-size:1rem;color:#333;background-color:#fff;transition:all .3s ease-in-out}.document-sharing-page .upload-section .upload-controls .matter-select:hover{border-color:#06c}.document-sharing-page .upload-section .upload-controls .matter-select:focus{outline:none;border-color:#06c;box-shadow:0 0 0 3px #0066cc1a}.document-sharing-page .upload-section .upload-controls .matter-select:disabled{background-color:#f5f5f5;color:#666;cursor:not-allowed}.document-sharing-page .upload-section .hidden-file-input{display:none}.document-sharing-page .sharing-controls{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;background-color:#f5f5f5;border-radius:8px;margin-bottom:1.5rem;gap:1.5rem}@media (max-width: 640px){.document-sharing-page .sharing-controls{flex-direction:column;align-items:stretch}}.document-sharing-page .sharing-controls .selection-info{display:flex;align-items:center;gap:1rem}.document-sharing-page .sharing-controls .selection-info .selected-count{color:#036;font-weight:600;font-size:1rem;min-width:150px}@media (max-width: 640px){.document-sharing-page .sharing-controls .selection-info .selected-count{min-width:auto}}.document-sharing-page .sharing-controls .action-buttons{display:flex;gap:1rem}@media (max-width: 640px){.document-sharing-page .sharing-controls .action-buttons{flex-direction:column}}.document-sharing-page .sharing-controls .action-buttons .btn{white-space:nowrap}@media (max-width: 640px){.document-sharing-page .sharing-controls .action-buttons .btn{flex:1}}.document-sharing-page .file-explorer{background-color:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001f,0 1px 2px #0000003d;overflow:hidden}.document-sharing-page .file-explorer .folder-upload-bar{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.5rem;border-bottom:1px solid #f5f5f5;background-color:#0066cc0a}@media (max-width: 640px){.document-sharing-page .file-explorer .folder-upload-bar{flex-direction:column;align-items:stretch}}.document-sharing-page .file-explorer .folder-upload-bar .folder-upload-label{color:#036;font-weight:600;font-size:.875rem}.document-sharing-page .file-explorer .folder-upload-bar .folder-upload-content{display:flex;align-items:center;gap:.5rem}@media (max-width: 640px){.document-sharing-page .file-explorer .folder-upload-bar .folder-upload-content{flex-direction:column;align-items:flex-start}}.document-sharing-page .file-explorer .folder-upload-bar .folder-upload-pill{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;background-color:#0066cc26;color:#036;font-weight:600;font-size:.75rem}.document-sharing-page .file-explorer .folder-upload-bar .folder-upload-hint{color:#666;font-size:.875rem}.document-sharing-page .file-explorer .file-node{display:flex;align-items:center;gap:1rem;padding:.5rem 1rem;margin-bottom:.25rem;border-radius:4px;transition:all .3s ease-in-out}.document-sharing-page .file-explorer .file-node:hover{background-color:#0066cc0d}.document-sharing-page .file-explorer .file-node.selected{background-color:#0066cc1a;border-left:3px solid #0066cc}.document-sharing-page .file-explorer .file-node .file-checkbox{display:flex;align-items:center;flex-shrink:0}.document-sharing-page .file-explorer .file-node .file-checkbox input[type=checkbox],.document-sharing-page .file-explorer .file-node .file-checkbox input[type=radio]{width:18px;height:18px;cursor:pointer;accent-color:#0066cc}.document-sharing-page .file-explorer .file-node .file-checkbox input[type=checkbox]:hover,.document-sharing-page .file-explorer .file-node .file-checkbox input[type=radio]:hover{transform:scale(1.1)}.document-sharing-page .file-explorer .file-node .file-info{display:flex;align-items:center;gap:.5rem;flex:1;min-width:0}.document-sharing-page .file-explorer .file-node .file-info .file-icon{font-size:1.25rem;flex-shrink:0}.document-sharing-page .file-explorer .file-node .file-info .file-details{flex:1;min-width:0}.document-sharing-page .file-explorer .file-node .file-info .file-details .file-name{color:#333;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.document-sharing-page .file-explorer .file-node .file-info .file-details .file-meta{display:flex;align-items:center;gap:.25rem;font-size:.75rem;color:#666;margin-top:2px}.document-sharing-page .file-explorer .file-node .file-info .file-details .file-meta .separator{margin:0 2px}.document-sharing-page .file-explorer .folder-node{margin-bottom:.25rem}.document-sharing-page .file-explorer .folder-node .folder-header{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;cursor:pointer;border-radius:4px;transition:background-color .3s ease-in-out}.document-sharing-page .file-explorer .folder-node .folder-header:hover{background-color:#0066cc1a}.document-sharing-page .file-explorer .folder-node .folder-header.expanded{background-color:#0066cc0d}.document-sharing-page .file-explorer .folder-node .folder-header.selected{background-color:#0066cc26;border-left:3px solid #0066cc}.document-sharing-page .file-explorer .folder-node .folder-header .folder-checkbox{display:flex;align-items:center;flex-shrink:0}.document-sharing-page .file-explorer .folder-node .folder-header .folder-checkbox input[type=checkbox],.document-sharing-page .file-explorer .folder-node .folder-header .folder-checkbox input[type=radio]{width:18px;height:18px;cursor:pointer;accent-color:#0066cc}.document-sharing-page .file-explorer .folder-node .folder-header .folder-checkbox input[type=checkbox]:hover,.document-sharing-page .file-explorer .folder-node .folder-header .folder-checkbox input[type=radio]:hover{transform:scale(1.1)}.document-sharing-page .file-explorer .folder-node .folder-header .folder-checkbox input[type=checkbox]:indeterminate{opacity:.7}.document-sharing-page .file-explorer .folder-node .folder-header .folder-icon{font-size:1.25rem;flex-shrink:0}.document-sharing-page .file-explorer .folder-node .folder-header .folder-name{flex:1;font-weight:600;color:#036}.document-sharing-page .file-explorer .folder-node .folder-header .expand-icon{font-size:.75rem;color:#666;flex-shrink:0}.document-sharing-page .file-explorer .folder-node .folder-children{margin-left:1rem}.admin-page-container .container{padding:2rem;max-width:1400px;margin:0 auto}@media (max-width: 640px){.admin-page-container .container{padding:1.5rem}}.admin-page-container .section-header{margin-bottom:2rem}.admin-page-container .section-header h2{color:#036;font-size:2rem;margin:0 0 .5rem;padding-bottom:1rem;border-bottom:2px solid #0066cc}.admin-page-container .section-header p{color:#666;margin:.5rem 0 0}.admin-page-container .coming-soon{text-align:center;padding:3rem;background-color:#f5f5f5;border-radius:8px;color:#666}.admin-page-container .coming-soon p{font-size:1.25rem;margin:0}.admin-dashboard-page .container{padding:2rem;max-width:1400px;margin:0 auto}@media (max-width: 640px){.admin-dashboard-page .container{padding:1.5rem}}.admin-dashboard-page .dashboard-header{text-align:center;margin-bottom:3rem;padding:2rem;background:linear-gradient(135deg,#036,#06c);border-radius:12px;color:#fff}.admin-dashboard-page .dashboard-header h1{font-size:2rem;margin:0 0 .5rem;font-weight:700;color:#fff}@media (max-width: 640px){.admin-dashboard-page .dashboard-header h1{font-size:1.25rem}}.admin-dashboard-page .dashboard-header .subtitle{font-size:1.25rem;margin:0;opacity:.95;font-weight:500}@media (max-width: 640px){.admin-dashboard-page .dashboard-header .subtitle{font-size:1rem}}.admin-dashboard-page .admin-tiles-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:2rem;margin-bottom:3rem}@media (max-width: 640px){.admin-dashboard-page .admin-tiles-grid{grid-template-columns:1fr;gap:1.5rem}}.admin-dashboard-page .admin-tile{display:flex;flex-direction:column;padding:1.5rem;border-radius:12px;cursor:pointer;box-shadow:0 1px 3px #0000001f,0 1px 2px #0000003d;transition:all .3s ease-in-out;border-left:5px solid transparent;background-color:#fff;position:relative;overflow:hidden}.admin-dashboard-page .admin-tile:hover{transform:translateY(-8px);box-shadow:0 12px 24px #00000026}.admin-dashboard-page .admin-tile:hover .tile-arrow{transform:translate(4px)}.admin-dashboard-page .admin-tile:focus-visible{outline:2px solid #0066cc;outline-offset:2px}.admin-dashboard-page .admin-tile .tile-icon{font-size:3rem;margin-bottom:1rem;display:block}.admin-dashboard-page .admin-tile .tile-content{flex:1}.admin-dashboard-page .admin-tile .tile-content h3{margin:0 0 .5rem;font-size:1.25rem;font-weight:700;color:#036}.admin-dashboard-page .admin-tile .tile-content p{margin:0;font-size:.875rem;color:#666;line-height:1.5}.admin-dashboard-page .admin-tile .tile-arrow{font-size:1.5rem;font-weight:700;margin-top:1rem;transition:transform .3s ease-in-out}.admin-dashboard-page .admin-tile.admin-tile-blue{border-left-color:#06c}.admin-dashboard-page .admin-tile.admin-tile-blue .tile-content h3,.admin-dashboard-page .admin-tile.admin-tile-blue .tile-arrow{color:#06c}.admin-dashboard-page .admin-tile.admin-tile-green{border-left-color:#22c55e}.admin-dashboard-page .admin-tile.admin-tile-green .tile-content h3,.admin-dashboard-page .admin-tile.admin-tile-green .tile-arrow{color:#22c55e}.admin-dashboard-page .admin-tile.admin-tile-purple{border-left-color:#a855f7}.admin-dashboard-page .admin-tile.admin-tile-purple .tile-content h3,.admin-dashboard-page .admin-tile.admin-tile-purple .tile-arrow{color:#a855f7}.admin-dashboard-page .admin-tile.admin-tile-orange{border-left-color:#f97316}.admin-dashboard-page .admin-tile.admin-tile-orange .tile-content h3,.admin-dashboard-page .admin-tile.admin-tile-orange .tile-arrow{color:#f97316}.admin-dashboard-page .admin-tile.admin-tile-teal{border-left-color:#06b6d4}.admin-dashboard-page .admin-tile.admin-tile-teal .tile-content h3,.admin-dashboard-page .admin-tile.admin-tile-teal .tile-arrow{color:#06b6d4}.admin-dashboard-page .admin-tile.admin-tile-red{border-left-color:#ef4444}.admin-dashboard-page .admin-tile.admin-tile-red .tile-content h3,.admin-dashboard-page .admin-tile.admin-tile-red .tile-arrow{color:#ef4444}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.calculators-landing{max-width:1200px;margin:0 auto;padding:1.5rem}.calculators-landing .landing-intro{text-align:center;margin-bottom:2rem}.calculators-landing .landing-intro h1{font-size:2.5rem;color:#036;margin-bottom:1.5rem}.calculators-landing .landing-intro .lead{font-size:1.25rem;color:#333;margin-bottom:1rem;max-width:800px;margin-left:auto;margin-right:auto}.calculators-landing .landing-intro .disclaimer-intro{font-size:1rem;color:#666;max-width:700px;margin-left:auto;margin-right:auto}.calculators-landing .calculators-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1.5rem;margin-bottom:1.5rem}.calculators-landing .calculator-card{background:#fff;border:2px solid #f5f5f5;border-radius:8px;padding:1.5rem;transition:all .3s ease;display:flex;flex-direction:column;cursor:pointer}.calculators-landing .calculator-card:focus-visible{outline:3px solid rgba(0,102,204,.35);outline-offset:2px}.calculators-landing .calculator-card:hover{border-color:#06c;box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.calculators-landing .calculator-card.highlighted{border-color:#06c;background:#0066cc0d}.calculators-landing .calculator-card h2{color:#036;font-size:1.5rem;margin-bottom:.5rem}.calculators-landing .calculator-card p{color:#333;margin-bottom:1rem}.calculators-landing .calculator-card .calculator-features{list-style:none;padding-left:0;margin-bottom:1rem}.calculators-landing .calculator-card .calculator-features li{color:#666;position:relative;padding:.25rem 0 .25rem 1.5rem;font-size:.875rem}.calculators-landing .calculator-card .calculator-features li:before{content:"✓";position:absolute;left:0;color:#06c;font-weight:700}.calculators-landing .calculator-card .btn{width:100%;display:block;padding:.5rem 1rem;margin-top:auto;font-weight:600;font-size:1rem;border-radius:8px;cursor:pointer;text-decoration:none;text-align:center;transition:all .3s ease;border:none}.calculators-landing .calculator-card .btn.btn-primary{background:linear-gradient(135deg,#06c,#0059b3);color:#fff;box-shadow:0 8px 20px #0066cc40}.calculators-landing .calculator-card .btn.btn-primary:hover{background:linear-gradient(135deg,#0059b3,#004d99);box-shadow:0 12px 28px #0066cc59;transform:translateY(-2px);color:#fff;text-decoration:none}.calculators-landing .calculator-card .btn.btn-primary:active{transform:translateY(0);box-shadow:0 4px 12px #06c3}.calculators-landing .calculator-card .btn.btn-secondary{background-color:transparent;color:#06c;border:2px solid #0066cc}.calculators-landing .calculator-card .btn.btn-secondary:hover{background-color:#0066cc1a;color:#06c;text-decoration:none}.calculators-landing .calculator-card .btn.btn-outline{background-color:transparent;color:#fff;border:2px solid #ffffff}.calculators-landing .calculator-card .btn.btn-outline:hover{background-color:#ffffff1a;color:#fff;text-decoration:none}.calculators-landing .landing-cta{background:linear-gradient(135deg,#036,#06c);color:#fff;padding:2rem 3rem;border-radius:8px;text-align:center}.calculators-landing .landing-cta h3{color:#fff;margin-bottom:1rem}.calculators-landing .landing-cta p{color:#ffffffe6;max-width:700px;margin-left:auto;margin-right:auto;margin-bottom:1.5rem}.calculators-landing .landing-cta .cta-buttons{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.calculator-page{max-width:900px;margin:0 auto;padding:1.5rem}.calculator-page .calculator-header{margin-bottom:1.5rem}.calculator-page .calculator-header .back-link{display:inline-block;color:#06c;text-decoration:none;margin-bottom:1rem;font-weight:600}.calculator-page .calculator-header .back-link:hover{text-decoration:underline}.calculator-page .calculator-header h1{color:#036;font-size:2rem;margin-bottom:.5rem}.calculator-page .calculator-header .guidelines-info{color:#666;font-size:1rem}.calculator-page .calculator-header .guidelines-info .effective-date{display:block;font-size:.875rem;color:#333;margin-top:.25rem}.calculator-page .calculator-form{background:#fff;border:1px solid #f5f5f5;border-radius:8px;padding:1.5rem}.calculator-page .calculator-form .form-section{margin-bottom:.4rem;padding-bottom:1.5rem;border-bottom:1px solid #f5f5f5}.calculator-page .calculator-form .form-section:last-of-type{border-bottom:none;padding-bottom:0}.calculator-page .calculator-form .form-section h2,.calculator-page .calculator-form .form-section h3{color:#036;margin-bottom:1.5rem}.calculator-page .calculator-form .form-section .section-note{background:#0066cc1a;padding:1rem;border-radius:4px;font-size:.875rem;margin-bottom:1.5rem;border-left:3px solid #0066cc}.calculator-page .calculator-form .form-group{margin-bottom:1rem}.calculator-page .calculator-form .form-group label{display:block;font-weight:600;color:#333;margin-bottom:.25rem}.calculator-page .calculator-form .form-group input,.calculator-page .calculator-form .form-group select{width:100%;padding:.5rem 1rem;border:2px solid #bbb;border-radius:4px;font-size:1rem;background-color:#fafafa;color:#333;transition:border-color .2s,background-color .2s}.calculator-page .calculator-form .form-group input:focus,.calculator-page .calculator-form .form-group select:focus{outline:none;border-color:#06c;background-color:#fff}.calculator-page .calculator-form .form-group .input-with-prefix{display:flex;align-items:center}.calculator-page .calculator-form .form-group .input-with-prefix .prefix{background:#f0f0f0;padding:.5rem 1rem;border:2px solid #bbb;border-right:none;border-radius:4px 0 0 4px;font-weight:600;color:#333}.calculator-page .calculator-form .form-group .input-with-prefix input{border-radius:0 4px 4px 0}.calculator-page .calculator-form .form-group .form-hint{display:block;font-size:.875rem;color:#666;margin-top:.25rem}.calculator-page .calculator-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}@media (max-width: 768px){.calculator-page .calculator-form .form-row{grid-template-columns:1fr}}.calculator-page .calculator-form .parent-input-grid{display:grid;grid-template-columns:minmax(220px,1.2fr) 1fr 1fr;gap:.5rem 1rem;align-items:end}.calculator-page .calculator-form .parent-input-grid.parent-input-grid--names{align-items:center}.calculator-page .calculator-form .parent-input-grid .parent-input-grid__header{font-size:.875rem;font-weight:700;color:#036;padding-bottom:.25rem;border-bottom:1px solid #f5f5f5}.calculator-page .calculator-form .parent-input-grid .parent-input-grid__prompt{font-weight:600;color:#333;padding-bottom:.5rem}.calculator-page .calculator-form .parent-input-grid .form-group{margin-bottom:0}@media (max-width: 768px){.calculator-page .calculator-form .parent-input-grid{grid-template-columns:1fr}.calculator-page .calculator-form .parent-input-grid .parent-input-grid__header:first-child{display:none}.calculator-page .calculator-form .parent-input-grid .parent-input-grid__prompt{padding-top:.5rem;border-top:1px dashed #f5f5f5;margin-top:.25rem}}.calculator-page .calculator-form .calculation-errors{background:#dc35451a;border:1px solid #dc3545;border-radius:4px;padding:1rem;margin-bottom:1.5rem}.calculator-page .calculator-form .calculation-errors h4{color:#dc3545;margin-bottom:1rem}.calculator-page .calculator-form .calculation-errors ul{list-style-position:inside;color:#dc3545}.calculator-page .calculator-form .calculation-errors ul li{margin-bottom:.25rem}.calculator-page .calculator-form .form-actions{display:flex;gap:1rem;justify-content:center;margin-top:2rem;flex-wrap:wrap}.calculator-page .calculator-form .form-actions .btn{min-width:200px;display:inline-block;padding:1rem 1.5rem;font-weight:600;font-size:1rem;border-radius:8px;cursor:pointer;text-decoration:none;text-align:center;transition:all .3s ease;border:none}.calculator-page .calculator-form .form-actions .btn.btn-primary{background:linear-gradient(135deg,#06c,#0059b3);color:#fff;box-shadow:0 8px 20px #0066cc40}.calculator-page .calculator-form .form-actions .btn.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#0059b3,#004d99);box-shadow:0 12px 28px #0066cc59;transform:translateY(-2px);color:#fff;text-decoration:none}.calculator-page .calculator-form .form-actions .btn.btn-primary:active:not(:disabled){transform:translateY(0);box-shadow:0 4px 12px #06c3}.calculator-page .calculator-form .form-actions .btn.btn-secondary{background-color:#f5f5f5;color:#333;border:1px solid #ddd}.calculator-page .calculator-form .form-actions .btn.btn-secondary:hover:not(:disabled){background-color:#e8e8e8;color:#333;text-decoration:none}.calculator-page .calculator-form .form-actions .btn.btn-outline{background-color:transparent;color:#06c;border:2px solid #0066cc}.calculator-page .calculator-form .form-actions .btn.btn-outline:hover:not(:disabled){background-color:#0066cc1a;color:#06c;text-decoration:none}.calculator-page .calculator-form .form-actions .btn.btn-lg{padding:1.5rem 2rem;font-size:1.25rem}.calculator-page .calculator-form .calculator-explanation{margin-top:2rem;padding-top:1.5rem;border-top:1px solid #f5f5f5}.calculator-page .calculator-form .calculator-explanation h3{color:#036;margin-bottom:1rem}.calculator-page .calculator-form .calculator-explanation p,.calculator-page .calculator-form .calculator-explanation li{color:#333;line-height:1.6}.calculator-page .calculator-form .calculator-explanation ul{margin-left:1.5rem;margin-bottom:1rem}.calculator-page .calculator-form .calculator-explanation ul ul{margin-top:.25rem}.calculator-page .calculator-form .calculator-explanation .note{background:#0066cc1a;padding:1rem;border-radius:4px;border-left:3px solid #0066cc;margin-top:1rem}.calculator-page .calculator-form .cavanagh-explanation{background:#0033660d;border:1px solid #003366;border-radius:8px;padding:1.5rem;margin-bottom:1.5rem}.calculator-page .calculator-form .cavanagh-explanation h3{color:#036;margin-bottom:1rem}.calculator-page .calculator-form .cavanagh-explanation p,.calculator-page .calculator-form .cavanagh-explanation li{color:#333}.calculator-page .calculator-form .cavanagh-explanation ul{margin-left:1.5rem}.calculator-page .calculator-results .cavanagh-comparison{background:#fff;border:1px solid #f5f5f5;border-radius:8px;padding:1.5rem;margin-bottom:1.5rem}.calculator-page .calculator-results .cavanagh-comparison .comparison-intro{color:#333;margin-bottom:1.5rem}.calculator-page .calculator-results .cavanagh-comparison .scenarios-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}@media (max-width: 768px){.calculator-page .calculator-results .cavanagh-comparison .scenarios-grid{grid-template-columns:1fr}}.calculator-page .calculator-results .cavanagh-comparison .scenario-card{background:#0066cc0d;border:2px solid #0066cc;border-radius:8px;padding:1.5rem;display:flex;flex-direction:column}.calculator-page .calculator-results .cavanagh-comparison .scenario-card h3{color:#06c;font-size:1.25rem;margin-bottom:1.5rem;text-align:center;min-height:2.5rem;display:flex;align-items:center;justify-content:center}.calculator-page .calculator-results .cavanagh-comparison .scenario-card .scenario-results .result-item{display:flex;justify-content:space-between;padding:1rem 0;border-bottom:1px solid rgba(102,102,102,.2)}.calculator-page .calculator-results .cavanagh-comparison .scenario-card .scenario-results .result-item.total{border-top:2px solid #0066cc;border-bottom:none;margin-top:1rem;padding-top:1.5rem;font-weight:700}.calculator-page .calculator-results .cavanagh-comparison .scenario-card .scenario-results .result-item.total .label{color:#036}.calculator-page .calculator-results .cavanagh-comparison .scenario-card .scenario-results .result-item.total .value{color:#06c;font-size:1.25rem}.calculator-page .calculator-results .cavanagh-comparison .scenario-card .scenario-results .result-item .label{color:#333;font-weight:600}.calculator-page .calculator-results .cavanagh-comparison .scenario-card .scenario-results .result-item .value{color:#036;font-weight:700}.calculator-page .calculator-results .form-actions{display:flex;gap:1rem;justify-content:center;margin-top:2rem;flex-wrap:wrap}.calculator-page .calculator-results .form-actions .btn{display:inline-block;padding:1rem 1.5rem;font-weight:600;font-size:1rem;border-radius:8px;cursor:pointer;text-decoration:none;text-align:center;transition:all .3s ease;border:none}.calculator-page .calculator-results .form-actions .btn.btn-primary{background:linear-gradient(135deg,#06c,#0059b3);color:#fff;box-shadow:0 8px 20px #0066cc40}.calculator-page .calculator-results .form-actions .btn.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#0059b3,#004d99);box-shadow:0 12px 28px #0066cc59;transform:translateY(-2px);color:#fff;text-decoration:none}.calculator-page .calculator-results .form-actions .btn.btn-primary:active:not(:disabled){transform:translateY(0);box-shadow:0 4px 12px #06c3}.calculator-page .calculator-results .form-actions .btn.btn-secondary{background-color:#f5f5f5;color:#333;border:1px solid #ddd}.calculator-page .calculator-results .form-actions .btn.btn-secondary:hover:not(:disabled){background-color:#e8e8e8;color:#333;text-decoration:none}.calculator-page .calculator-results .form-actions .btn.btn-outline{background-color:transparent;color:#06c;border:2px solid #0066cc}.calculator-page .calculator-results .form-actions .btn.btn-outline:hover:not(:disabled){background-color:#0066cc1a;color:#06c;text-decoration:none}.calculator-report{background:#fff;border:1px solid #f5f5f5;border-radius:8px;padding:1.5rem;margin-bottom:1.5rem}.calculator-report .report-header{text-align:center;padding-bottom:1rem;border-bottom:2px solid #003366;margin-bottom:1.5rem}.calculator-report .report-header h2{color:#036;font-size:2rem;margin-bottom:.5rem}.calculator-report .report-header .report-date{color:#666;font-size:.875rem}.calculator-report .report-section{margin-bottom:1.5rem}.calculator-report .report-section h3{color:#036;font-size:1.5rem;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid #f5f5f5}.calculator-report .report-section.results-section h3{color:#06c}.calculator-report .report-section .report-subsection{margin-bottom:1rem}.calculator-report .report-section .report-subsection:last-child{margin-bottom:0}.calculator-report .report-section .report-subsection h4{color:#333;font-size:1.25rem;margin-bottom:.5rem}.calculator-report .report-section .report-table{width:100%;border-collapse:collapse}.calculator-report .report-section .report-table tbody tr{border-bottom:1px solid #f5f5f5}.calculator-report .report-section .report-table tbody tr:last-child{border-bottom:none}.calculator-report .report-section .report-table td{padding:.5rem 0}.calculator-report .report-section .report-table td.report-label{color:#333;font-weight:600;width:60%}.calculator-report .report-section .report-table td.report-value{color:#036;font-weight:700;text-align:right}.calculator-report .report-section .report-notes{list-style-position:inside;color:#333}.calculator-report .report-section .report-notes li{margin-bottom:.5rem;line-height:1.6}.calculator-report .report-disclaimer{background:#dc35451a;border:1px solid #dc3545;border-left:4px solid #dc3545;border-radius:4px;padding:1rem;margin-bottom:1.5rem}.calculator-report .report-disclaimer h4{color:#dc3545;margin-bottom:1rem}.calculator-report .report-disclaimer p{color:#333;margin-bottom:0;line-height:1.6}.calculator-report .report-cta{background:linear-gradient(135deg,#036,#06c);color:#fff;padding:1.5rem;border-radius:8px;text-align:center;margin-bottom:1.5rem}.calculator-report .report-cta p{color:#fff;margin-bottom:1rem;font-size:1.25rem}.calculator-report .report-cta p:last-of-type{margin-bottom:0}.calculator-report .report-cta .cta-contact{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,.3)}.calculator-report .report-cta .cta-contact p{margin-bottom:.25rem;font-size:1rem}.calculator-report .report-actions{text-align:center}@media print{.calculator-report .report-actions.no-print{display:none}}.calculator-report .report-actions .btn{display:inline-block;min-width:250px;padding:1rem 1.5rem;font-weight:600;font-size:1rem;border-radius:8px;cursor:pointer;text-decoration:none;text-align:center;transition:all .3s ease;border:none}.calculator-report .report-actions .btn.btn-primary{background:linear-gradient(135deg,#06c,#0059b3);color:#fff;box-shadow:0 8px 20px #0066cc40}.calculator-report .report-actions .btn.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#0059b3,#004d99);box-shadow:0 12px 28px #0066cc59;transform:translateY(-2px);color:#fff;text-decoration:none}.calculator-report .report-actions .btn.btn-primary:active:not(:disabled){transform:translateY(0);box-shadow:0 4px 12px #06c3}.calculator-report .report-actions .btn.btn-secondary{background-color:#f5f5f5;color:#333;border:1px solid #ddd}.calculator-report .report-actions .btn.btn-secondary:hover:not(:disabled){background-color:#e8e8e8;color:#333;text-decoration:none}.header .header-content{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap}.header .header-nav{display:flex;align-items:center;gap:1.5rem}.header .header-nav .header-link{color:#06c;text-decoration:none;font-weight:600;padding:.25rem 1rem;border-radius:4px;transition:all .2s}.header .header-nav .header-link:hover{background:#0066cc1a;text-decoration:none}.header .header-nav .user-section{display:flex;align-items:center;gap:1rem}@media print{.calculator-page .calculator-header .back-link,.calculator-page .form-actions{display:none}.calculator-report{border:none;box-shadow:none}.calculator-report .report-header{border-bottom:2px solid #000}.no-print{display:none!important}}@media (max-width: 768px){.calculators-landing{padding:1.5rem}.calculators-landing .calculators-grid{grid-template-columns:1fr}.calculator-page,.calculator-page .calculator-form,.calculator-report{padding:1.5rem}.calculator-report .report-table td.report-label{width:50%}}*{margin:0;padding:0;box-sizing:border-box}html{font-size:16px}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:1rem;line-height:1.5;color:#333;background-color:#fff}h1,h2,h3,h4,h5,h6{margin-bottom:1rem;font-weight:600}h1{font-size:2rem}h2{font-size:1.5rem}h3{font-size:1.25rem}p{margin-bottom:1rem}p:last-child{margin-bottom:0}a{color:#06c;text-decoration:none}a:hover{text-decoration:underline}input,textarea,select{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:1rem;padding:1rem;border:1px solid #666666;border-radius:4px;transition:border-color .3s ease-in-out}input:focus,textarea:focus,select:focus{outline:none;border-color:#06c;box-shadow:0 0 0 3px #0066cc1a}input:disabled,textarea:disabled,select:disabled{background-color:#f5f5f5;cursor:not-allowed;opacity:.6}textarea{resize:vertical;min-height:100px}button{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:1rem;padding:.5rem 1.5rem;border:none;border-radius:4px;cursor:pointer;transition:all .3s ease-in-out}button:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background-color:#06c;color:#fff}.btn-primary:hover:not(:disabled){background-color:#004d99}.btn-secondary{background-color:#666;color:#333}.btn-secondary:hover:not(:disabled){background-color:#4d4d4d}.btn-danger{background-color:#dc3545;color:#fff}.btn-danger:hover:not(:disabled){background-color:#bd2130}.container{max-width:1200px;margin:0 auto;padding:1.5rem}@media (max-width: 1024px){.container{padding:1rem}}.text-center{text-align:center}.text-right{text-align:right}.text-left{text-align:left}.mt-1{margin-top:.5rem}.mt-2{margin-top:1rem}.mt-3{margin-top:1.5rem}.mb-1{margin-bottom:.5rem}.mb-2{margin-bottom:1rem}.mb-3{margin-bottom:1.5rem}.p-1{padding:.5rem}.p-2{padding:1rem}.p-3{padding:1.5rem}.flex-center{display:flex;align-items:center;justify-content:center}.flex-between{display:flex;align-items:center;justify-content:space-between}.loading{display:flex;align-items:center;justify-content:center;min-height:300px;color:#666}.error-message{padding:1rem;background-color:#f8d7da;border:1px solid #f5c6cb;border-radius:4px;color:#721c24;margin-bottom:1rem}.success-message{padding:1rem;background-color:#d4edda;border:1px solid #c3e6cb;border-radius:4px;color:#155724;margin-bottom:1rem}.warning-message{padding:1rem;background-color:#fff3cd;border:1px solid #ffeeba;border-radius:4px;color:#856404;margin-bottom:1rem}
