@import"https://fonts.googleapis.com/css2?family=Funnel+Sans:ital,wght@0,300..800;1,300..800&family=Roboto:ital,wght@0,100..900;1,100..900&display=swap";@import"https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,100;0,300;0,400;0,700;0,900;1,100;1,300;1,400;1,700;1,900&display=swap";@import"https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&display=swap";@import"https://fonts.googleapis.com/css2?family=Geist:wght@100..900&display=swap";*{margin:0;padding:0;font-family:Inter}.front{display:flex;justify-content:center;align-items:center;flex-direction:column;padding-top:50px}.front>button{background-color:#007bff;color:#fff;border:none;padding:10px 20px;font-size:17px;border-radius:15px;cursor:pointer}.front .userInfo{display:flex;flex-direction:column;min-width:200px;gap:15px;justify-content:center;align-items:center;background-color:#fff;box-shadow:0 0 10px #0000001a;border:1px solid rgba(0,0,0,.25);border-radius:15px;padding:20px;margin-top:20px}button{cursor:pointer}.toast-container{position:fixed;bottom:24px;left:50%;transform:translate(-50%);z-index:10000;display:flex;flex-direction:column;gap:8px;align-items:center;pointer-events:none}.toast{display:flex;align-items:center;gap:10px;padding:12px 20px;border-radius:10px;font-size:14px;font-weight:500;font-family:Funnel Sans,Inter,system-ui,sans-serif;color:#fff;box-shadow:0 4px 20px #0003;pointer-events:auto;cursor:pointer;animation:toast-in .3s ease;max-width:400px;white-space:nowrap}.toast-success{background:#16a34a}.toast-error{background:#dc2626}.toast-info{background:#2563eb}.toast-icon{font-size:16px;flex-shrink:0}.toast-message{overflow:hidden;text-overflow:ellipsis}@keyframes toast-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media(max-width:480px){.toast-container{bottom:16px;left:16px;right:16px;transform:none}.toast{max-width:100%;white-space:normal}}.landing{display:flex;width:100%;min-height:100vh;flex-direction:column;background-color:#fafafa}.landing .hero{display:flex;align-items:center;flex-direction:column;gap:20px;box-sizing:border-box;padding-top:150px}.landing .hero h1{color:#353535;font-size:60px;letter-spacing:-1%;text-align:center;max-width:90%;line-height:1.1;transform:translateY(10px);filter:blur(7px);opacity:0;animation:unblurFadeSlide 1s ease-in-out forwards}.landing .hero>p{color:#616161;font-size:17px;text-align:center;transform:translateY(10px);filter:blur(5px);opacity:0;animation:unblurFadeSlide 1s ease-in-out forwards .2s}.landing .hero .bgroup{display:flex;flex-direction:column;align-items:center;gap:10px}.landing .hero .cta{background-color:#272727;color:#fff;border:none;padding:15px 17px 15px 19px;border-radius:15px;font-size:13px;font-weight:550;letter-spacing:.2px;margin-top:20px;position:relative;display:flex;justify-content:center;align-items:center;gap:10px;box-shadow:#0000003d 0 3px 8px;transform:translateY(10px);filter:blur(5px);opacity:0;animation:unblurFadeSlide 1s ease-in-out forwards .5s}.landing .hero .cta img{height:19px}.landing .hero .bgroup .under{font-size:11px;font-weight:500;color:#696969;transform:translateY(10px);filter:blur(5px);opacity:0;animation:unblurFadeSlide 1s ease-in-out forwards .75s}.landing .hero .content{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:50px;width:1200px;max-width:95%}.landing .hero .content .hero-image{width:100%;aspect-ratio:1/.55;border-radius:15px;overflow:hidden;margin-top:60px;position:relative;mask-image:linear-gradient(to bottom,#000 80%,#0000);-webkit-mask-image:linear-gradient(to bottom,rgba(0,0,0,1) 80%,rgba(0,0,0,0));opacity:0;transform:translateY(20px);animation:unblurFadeSlide 1s ease-in-out forwards .25s}.landing .hero .content .hero-image img{width:100%;height:100%;object-fit:cover;object-position:center 40%;display:block}.landing .hero .content .subline{color:#2e2e2e;font-size:15px;font-weight:500}.landing .hero .bullets{display:flex;gap:70px;width:100%;justify-content:center;margin-top:40px;flex-wrap:wrap}.landing .hero .bullets>div{display:flex;flex-direction:column;gap:9px;width:200px;font-size:14px;transform:translateY(20px);opacity:0}.landing .hero .bullets .bullet.animate{animation:softSlide 1s ease-in-out forwards}@keyframes softSlide{80%{transform:translateY(-1px)}to{transform:translateY(0);opacity:1}}.landing .hero .bullets .bullet:nth-of-type(1){animation-delay:.15s}.landing .hero .bullets .bullet:nth-of-type(2){animation-delay:.3s}.landing .hero .bullets .bullet:nth-of-type(3){animation-delay:.45s}.landing .hero .bullets .bullet:nth-of-type(4){animation-delay:.6s}.landing .hero .bullets>div h4{font-weight:550;display:flex;align-items:center;gap:8px;color:#1b1b1b;letter-spacing:.1px}.landing .hero .bullets>div h4 img{height:18px}.landing .hero .bullets>div p{color:#272727;line-height:1.5}.landing .showcase{display:flex;flex-direction:column;margin-top:300px;width:100%;align-items:center}.landing .showcase .first{display:flex;flex-direction:column;width:1200px;max-width:85%;gap:75px}.landing .showcase .first h2{font-size:55px;font-weight:550;line-height:1;letter-spacing:-2%;color:#252525;padding-left:15px}.landing .showcase .reviews{display:flex;min-height:350px}.landing .showcase .reviews .left{width:35%}.landing .showcase .reviews .left .ph{display:flex;justify-content:center;align-items:center;border-radius:25px;aspect-ratio:1 / 1.3;width:100%;background-color:#f5f5f5}.landing .showcase .reviews .right{width:65%;display:flex;padding-left:100px;padding-top:40px;padding-bottom:20px;box-sizing:border-box;flex-direction:column;gap:15px}.landing .showcase .reviews .right .quote{font-size:40px;font-weight:450;color:#333;line-height:1.3;position:relative}.landing .showcase .reviews .right .quote .startquote{position:absolute;transform:scaleX(-1);height:50px;left:-50px;top:-30px}.landing .showcase .reviews .right .quote .endquote{position:absolute;height:50px;bottom:-15px;right:-40px}.landing .showcase .reviews .right h4{margin-top:20px;font-weight:600;font-size:18px}.landing .showcase .reviews .right .position{color:#474747}.landing .showcase .reviews .right .slider{margin-top:auto;display:flex;flex-direction:row;gap:14px}.landing .showcase .reviews .right .slider .slide{width:10px;height:10px;cursor:pointer;background-color:#cacaca;border-radius:25px;transition:width 1s ease-in-out;overflow:hidden;position:relative}.landing .showcase .reviews .right .slider .slide.active{width:100px}.landing .showcase .reviews .right .slider .slide.active:before{content:"";position:absolute;width:0%;height:100%;background-color:#8f8f8f;animation:increaseWidth 10s linear forwards}@keyframes increaseWidth{to{width:100%}}.landing .showcase .first .text-reviews-ticker{width:100%;overflow:hidden;mask-image:linear-gradient(to right,transparent,black 5%,black 95%,transparent);-webkit-mask-image:linear-gradient(to right,transparent,black 5%,black 95%,transparent);margin-top:60px}.landing .showcase .first .text-reviews-ticker .ticker-track{display:flex;gap:24px;animation:tickerScroll 40s linear infinite;width:max-content}.landing .showcase .first .text-reviews-ticker .ticker-card{flex-shrink:0;width:300px;padding:24px;background:#f8f8f8;border-radius:16px;display:flex;flex-direction:column;gap:12px}.landing .showcase .first .text-reviews-ticker .ticker-card p{font-size:15px;line-height:1.5;color:#282828;font-weight:450;margin:0}.landing .showcase .first .text-reviews-ticker .ticker-card span{font-size:13px;color:#787878;font-weight:500}@keyframes tickerScroll{0%{transform:translate(0)}to{transform:translate(-50%)}}.landing .showcase .second{display:flex;width:1300px;max-width:85%;height:500px;margin-top:300px}.landing .showcase .second>div{width:50%}.landing .showcase .second .left{display:flex;flex-direction:column;justify-content:center;gap:25px;box-sizing:border-box;padding-right:12%}.landing .showcase .second .left h3{font-size:48px;font-weight:500;letter-spacing:-2%;line-height:1.1;color:#252525}.landing .showcase .second .left p{color:#5f5f5f;font-size:18px;line-height:1.5;letter-spacing:.2px}.landing .showcase .second .left button{background-color:#272727;color:#fff;display:flex;font-weight:500;letter-spacing:.1px;align-items:center;padding:10px 18px 10px 20px;border-radius:20px;border:none;align-self:flex-start;margin-top:10px;font-size:13px;gap:5px;box-shadow:#0000003d 0 3px 8px}.landing .showcase .second .left button img{height:16px}.landing .showcase .second .right{display:flex;justify-content:center;align-items:center}.landing .showcase .second .right .ph{background-color:#f5f5f5;width:100%;aspect-ratio:1.3 / 1;border-radius:25px}.landing .showcase .third{display:flex;width:1300px;max-width:85%;height:500px;margin-top:300px}.landing .showcase .third>div{width:50%}.landing .showcase .third .right{display:flex;flex-direction:column;justify-content:center;gap:25px;box-sizing:border-box;padding-left:9%}.landing .showcase .third .right h3{font-size:48px;font-weight:500;letter-spacing:-2%;line-height:1.1;color:#252525}.landing .showcase .third .right p{color:#5f5f5f;font-size:18px;line-height:1.5;letter-spacing:.2px}.landing .showcase .third .right button{background-color:#272727;color:#fff;display:flex;font-weight:500;letter-spacing:.1px;align-items:center;padding:10px 18px 10px 20px;border-radius:20px;border:none;align-self:flex-start;margin-top:10px;font-size:13px;gap:5px;box-shadow:#0000003d 0 3px 8px}.landing .showcase .third .right button img{height:16px}.landing .showcase .third .left{display:flex;justify-content:center;align-items:center}.landing .showcase .third .left .ph{background-color:#f5f5f5;width:100%;aspect-ratio:1.3 / 1;border-radius:25px}.landing .showcase .banner{display:flex;justify-content:center;align-items:center;width:1300px;max-width:90%;gap:35px;border-radius:30px;margin-top:200px;box-sizing:border-box;flex-direction:column;padding:75px 0;background-color:#f7f7f7;border:1px solid rgb(230,230,230)}.landing .showcase .banner h3{font-size:50px;text-align:center;box-sizing:border-box;width:90%;line-height:1;letter-spacing:-2%;font-weight:400}.landing .showcase .banner button{background-color:#272727;color:#fff;border:none;font-size:14px;font-weight:500;padding:14px 22px;border-radius:25px}.landing .showcase .fourth{display:flex;flex-direction:column;margin-top:200px;align-items:center;gap:20px;width:1300px;max-width:85%}.landing .showcase .fourth>h3{font-size:50px;font-weight:550;letter-spacing:-2%;color:#252525;text-align:center;line-height:1.1}.landing .showcase .fourth>p{color:#414141;font-size:18px;letter-spacing:.2px;width:700px;max-width:100%;text-align:center;line-height:1.5}.landing .showcase .fourth .content{display:flex;margin-top:50px;width:100%;justify-content:center;align-items:center}.landing .showcase .fourth .content .left{display:flex;width:47%;flex-direction:column;justify-content:center;gap:35px;box-sizing:border-box;padding-right:100px}.landing .showcase .fourth .content .left .entry{display:flex;flex-direction:column;justify-content:center;padding:4px 0 4px 25px;position:relative;gap:0;transition:gap .25s ease-in-out;cursor:pointer}.landing .showcase .fourth .content .left .entry:before{content:"";background-color:#ddd;left:0;height:100%;width:3px;position:absolute;border-radius:25px;transition:background-color .25s ease-in-out}.landing .showcase .fourth .content .left .entry.selected:before{background-color:#333}.landing .showcase .fourth .content .left .entry h4{font-size:19px;font-weight:550;color:#757575;line-height:1.4;letter-spacing:.2px;transition:color .25s ease-in-out}.landing .showcase .fourth .content .left .entry.selected h4{color:#333}.landing .showcase .fourth .content .left .entry p{font-size:17px;max-height:0;max-width:430px;overflow:hidden;color:#4d4d4d;opacity:0;line-height:1.6;letter-spacing:.2px;transition:max-height .5s ease-in-out,opacity .5s ease-in-out}.landing .showcase .fourth .content .left .entry.selected{gap:15px}.landing .showcase .fourth .content .left .entry.selected p{max-height:110px;opacity:1}.landing .showcase .fourth .content .right{display:flex;width:53%}.landing .showcase .fourth .content .right .ph{width:100%;aspect-ratio:1 / .7;background-color:#f5f5f5;border-radius:25px}.landing .faq{display:flex;flex-direction:column;margin-top:250px;width:1000px;max-width:85%;align-self:center;align-items:center;gap:15px}.landing .faq h3{font-size:50px;font-weight:550}.landing .faq>p{color:#414141;font-size:18px}.landing .faq .questions{display:flex;flex-direction:column;width:100%;margin-top:60px}.landing .faq .questions .entry{width:100%;display:flex;padding:30px 0;flex-direction:column;justify-content:center;font-size:18px;font-weight:450;letter-spacing:2%;border-bottom:1px solid rgb(185,185,185);cursor:pointer}.landing .faq .questions .entry .top{display:flex}.landing .faq .questions .entry .bottom{margin-top:0;overflow:hidden;max-height:0px;opacity:0;font-weight:400;color:#242424;font-size:15px;box-sizing:border-box;padding-right:100px;line-height:1.5;transition:max-height .2s ease-in-out,margin-top .2s ease-in-out,opacity .1s ease-in-out}.landing .faq .questions .entry.open .bottom{margin-top:20px;max-height:150px;opacity:1}.landing .faq .questions .entry:first-of-type{border-top:1px solid rgb(185,185,185)}.landing .faq .questions .entry img{height:25px;margin-left:auto;transform:rotate(-90deg);transition:transform .25s ease-in-out;-webkit-user-select:none;user-select:none}.landing .faq .questions .entry.open img{transform:rotate(0)}.landing .footer{display:flex;margin-top:100px;align-items:center;flex-direction:column;background:#fff;overflow:hidden;box-sizing:border-box;padding:80px}.landing .footer .info{width:100%;border-radius:40px;box-sizing:border-box;display:flex;flex-direction:column}.landing .footer .info .top{display:flex}.landing .footer .top .left{display:flex;flex-direction:column;gap:25px;width:45%}.landing .footer .info .top .left h4{font-size:30px;font-weight:550;letter-spacing:.2px}.landing .footer .info .top .left p{color:#5f5f5f;line-height:1.6}.landing .footer .info .bottom{border-top:1px solid rgba(0,0,0,.15);margin-top:55px;padding-top:55px;display:flex;color:gray;font-size:14px;gap:18px}.landing .footer .info .bottom .copyright{margin-right:auto}.landing .footer .info .bottom .link{text-decoration:underline}.landing .footer .top .col{width:200px;display:flex;flex-direction:column;gap:13px}.landing .footer .info .top .col.first{margin-left:auto}.landing .footer .info .top .col h4{font-size:16px;font-weight:600;margin-bottom:10px}.landing .footer .info .top .col p{font-size:15px;font-weight:450;letter-spacing:.2px;color:#616161;cursor:pointer}@media(max-width:768px){.landing .hero h1{font-size:45px}.landing .hero>p{font-size:15px}.landing .content .bullets{gap:20px;width:95%}.landing .content .bullets>div{width:45%;font-size:14px}.landing .content .bullets>div h4{flex-direction:column;align-items:flex-start}.landing .content .bullets>div h4 img{margin-bottom:10px;height:20px}.landing .showcase{margin-top:150px}.landing .showcase .first{gap:35px}.landing .showcase .first h2{font-size:25px;padding-left:0;text-align:center}.landing .showcase .first .reviews{justify-content:center}.landing .showcase .first .reviews .left{display:none}.landing .showcase .first .reviews .right{padding:0;width:100%;align-items:center}.landing .showcase .first .reviews .right .quote{font-size:30px}.landing .showcase .second{flex-direction:column;flex-flow:column-reverse;gap:45px;height:auto;margin-top:150px}.landing .showcase .third{flex-direction:column;gap:45px;height:auto;margin-top:150px}.landing .showcase .second>div,.landing .showcase .third>div{width:100%}.landing .showcase .second .left,.landing .showcase .third .right{padding:0}.landing .showcase .second .left button,.landing .showcase .third .right button{align-self:center}.landing .showcase .second .left h3,.landing .showcase .third .right h3{font-size:30px;text-align:center}.landing .showcase .second .left p,.landing .showcase .third .right p{font-size:15px;line-height:1.3;text-align:center}.landing .showcase .banner{padding:40px 0;gap:20px;margin-top:150px}.landing .showcase .banner h3{font-size:25px;font-weight:450;line-height:1.3}.landing .showcase .banner br{display:none}.landing .showcase .fourth{margin-top:150px}.landing .showcase .fourth>h3{font-size:32px}.landing .showcase .fourth>p{font-size:15px}.landing .showcase .fourth .content{flex-direction:column;flex-flow:column-reverse;gap:50px;margin-top:25px}.landing .showcase .fourth .content .left,.landing .showcase .fourth .content .right{padding:0;width:100%}.landing .faq{margin-top:150px}.landing .faq>h3{font-size:32px;text-align:center}.landing .faq>p{font-size:16px;text-align:center}.landing .faq .questions{margin-top:30px}.landing .faq .questions .entry{padding:25px 0;font-size:16px}.landing .faq .questions .entry p{font-size:13px}.landing .footer{padding:20px}.landing .footer .top{flex-direction:column;gap:30px}.landing .footer .info .top>div{width:100%}.landing .footer .info .top .left{gap:15px}.landing .footer .info .top .left h4{font-size:25px}.landing .footer .info .top .left p{font-size:14px}}@keyframes unblurFadeSlide{to{filter:blur(0px);opacity:1;transform:translateY(0)}}.landing .showcase .banner p{font-size:16px;color:#616161;text-align:center;max-width:600px}.landing .showcase .banner .security-badges{display:flex;gap:40px;margin:20px 0}.landing .showcase .banner .security-badges .badge{display:flex;flex-direction:column;align-items:center;gap:10px}.landing .showcase .banner .security-badges .badge img{width:48px;height:48px;opacity:.7;filter:grayscale(100%)}.landing .showcase .banner .security-badges .badge span{font-size:13px;color:#787878;font-weight:500}@media(max-width:768px){.landing .showcase .banner .security-badges{flex-direction:column;gap:25px}.landing .showcase .banner .security-badges .badge{flex-direction:row;gap:15px}.landing .showcase .banner .security-badges .badge img{width:36px;height:36px}}.landing .hero .trust-line{display:flex;gap:20px;margin-top:5px}.landing .hero .trust-line span{font-size:12px;color:#828282;font-weight:500}.landing .hero .steps-preview{display:flex;align-items:center;gap:15px;margin-top:30px;padding:20px 30px;background:#fffc;border-radius:15px;border:1px solid rgb(230,230,230)}.landing .hero .steps-preview .step{display:flex;align-items:center;gap:10px}.landing .hero .steps-preview .step-num{width:24px;height:24px;background:#323232;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600}.landing .hero .steps-preview .step span:last-child{font-size:14px;color:#3c3c3c;font-weight:500}.landing .hero .steps-preview .step-arrow{color:#b4b4b4;font-size:16px}.landing .hero .bullet .micro-cta{font-size:13px;color:#646464;text-decoration:none;margin-top:8px;display:inline-block;transition:color .2s}.landing .hero .bullet .micro-cta:hover{color:#000}@media(max-width:768px){.landing .hero .trust-line{flex-direction:column;gap:5px;align-items:center}.landing .hero .steps-preview{flex-direction:column;gap:10px;padding:15px 20px}.landing .hero .steps-preview .step-arrow{transform:rotate(90deg)}}.landing .footer .info .top{display:flex;justify-content:space-between;gap:40px}.landing .footer .info .top .col{display:flex;flex-direction:column;gap:8px}.landing .footer .info .top .col h4{font-size:14px;font-weight:600;margin-bottom:5px;color:#282828}.landing .footer .info .top .col p{margin:0}.landing .footer .info .top .col a{font-size:14px;color:#646464;text-decoration:none;transition:color .2s}.landing .footer .info .top .col a:hover{color:#000}@media(max-width:768px){.landing .footer .info .top{flex-direction:column;gap:30px}}.landing .email-capture{display:flex;flex-direction:column;align-items:center;padding:80px 20px;background:linear-gradient(180deg,#fafafa,#f5f5f5);text-align:center;gap:15px}.landing .email-capture h3{font-size:32px;font-weight:600;color:#282828}.landing .email-capture>p{font-size:16px;color:#646464;max-width:500px}.landing .email-capture .email-form{display:flex;gap:10px;margin-top:10px}.landing .email-capture .email-form input{padding:14px 20px;font-size:15px;border:1px solid rgb(200,200,200);border-radius:8px;width:280px;outline:none;transition:border-color .2s}.landing .email-capture .email-form input:focus{border-color:#646464}.landing .email-capture .email-form button{padding:14px 24px;font-size:15px;font-weight:600;background:#282828;color:#fff;border:none;border-radius:8px;cursor:pointer;transition:background .2s}.landing .email-capture .email-form button:hover{background:#141414}.landing .email-capture .privacy-note{font-size:12px;color:#969696;margin-top:5px}@media(max-width:768px){.landing .email-capture h3{font-size:24px}.landing .email-capture .email-form{flex-direction:column;width:100%;max-width:300px}.landing .email-capture .email-form input{width:100%;box-sizing:border-box}}.landing .hero .urgency-badge{background:linear-gradient(90deg,#dcb464,#c8a050);color:#3c2800;font-size:12px;font-weight:600;padding:8px 16px;border-radius:20px;text-transform:uppercase;letter-spacing:.5px;margin-bottom:10px}html{scroll-behavior:smooth}[id]{scroll-margin-top:120px}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);animation:overlayFadeIn .15s ease-out forwards}@keyframes overlayFadeIn{0%{opacity:0}to{opacity:1}}.modal-panel{background:#fff;border-radius:12px;padding:40px;max-width:550px;width:90%;position:relative;box-shadow:0 20px 60px #0000004d;animation:modalFadeIn .2s ease-out .05s both}@keyframes modalFadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.modal-panel h3{margin:0 0 20px;font-size:24px;color:#353535}.modal-panel p{margin:0;font-size:16px;line-height:1.7;color:#505050}.modal-close{position:absolute;top:15px;right:20px;background:none;border:none;font-size:28px;color:#969696;cursor:pointer;padding:0;line-height:1}.modal-close:hover{color:#505050}.modal-list{list-style:none;padding:0;margin:16px 0 0}.modal-list li{font-size:16px;line-height:1.7;color:#505050;padding-left:20px;position:relative}.modal-list li:before{content:"–";position:absolute;left:0}.header{width:100%;height:95px;box-sizing:border-box;padding:0 100px;display:flex;align-items:center;position:fixed;z-index:9999!important;transition:height .2s ease-in-out;background-color:#fafafa}.header h3{font-weight:600;font-size:30px;letter-spacing:-1.5%;color:#000;cursor:pointer}.header .account{margin-left:auto;display:flex;gap:6px}.header button:first-of-type{background-color:transparent;height:45px;padding:0 16px;border:none;border-radius:25px;font-weight:450}.header button:last-of-type{background-color:#292929;padding:0 16px;letter-spacing:.1px;border-radius:25px;font-size:13px;font-weight:600;border:none;height:45px;color:#ececec;box-shadow:#0000003d 0 3px 8px}@media(max-width:768px){.landing .header{padding:0 25px}.landing .header h3{font-size:25px}}.header .header-nav{display:flex;gap:30px;margin-left:50px}.header .header-nav a{color:#3c3c3c;text-decoration:none;font-size:14px;font-weight:500;transition:color .2s}.header .header-nav a:hover{color:#000}.patientHeader{display:flex;flex-direction:column;gap:16px;margin-bottom:10px;color:#202020;background-color:#f8f8f8;border-radius:10px;padding:24px;box-sizing:border-box;position:relative}.patientHeader .summary{display:flex;flex-direction:column;gap:8px}.patientHeader .summary .greeting{font-size:24px;font-family:Lato,sans-serif;font-weight:800;letter-spacing:.5px;margin:0}.patientHeader .summary .brief{font-size:14px;letter-spacing:.3px;color:#6b7280;margin:0;max-width:600px}.view-area{position:relative;display:flex;flex-direction:column}.view-area>*{flex:1;min-height:0}.system-summary-section{margin-top:8px}.system-summary-section .brief{font-size:14px;letter-spacing:.3px;color:#6b7280;margin:0;max-width:600px}.view-toggle-button{position:absolute;bottom:16px;right:16px;width:40px;height:40px;border-radius:50%;background:#ffffffe6;border:1px solid rgba(0,0,0,.08);box-shadow:0 1px 4px #0000001a;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .15s ease,box-shadow .15s ease;z-index:10;padding:0;color:#6b7280;-webkit-tap-highlight-color:transparent}.view-toggle-button:hover{transform:scale(1.08);box-shadow:0 2px 8px #0000002e;color:#374151}@media(max-width:768px){.patientHeader{padding:16px;border-radius:0}.patientHeader .summary .greeting{font-size:20px}.patientHeader .summary .brief{font-size:13px}}.lineplot-modal-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;z-index:10000;display:flex;align-items:center;justify-content:center;padding:16px}.lineplot-modal{background:#fff;border-radius:16px;width:100%;height:70dvh;max-height:80dvh;overflow-y:auto;padding:16px;box-sizing:border-box;box-shadow:0 8px 32px #0003}.organSystemCircle{display:flex;flex-direction:column;align-items:center;cursor:pointer;padding:8px;border-radius:12px;transition:transform .15s ease,background-color .15s ease,box-shadow .15s ease;position:relative;min-width:90px;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;outline:none}.organSystemCircle:hover{transform:scale(1.05);background-color:#00000008}.organSystemCircle.selected{background-color:#3b82f61a;box-shadow:0 0 0 2px #3b82f64d}.organSystemCircle.highlighted{background-color:#22c55e1a;box-shadow:0 0 0 2px #22c55e66}.organSystemCircle.highlighted.selected{background-color:#3b82f626;box-shadow:0 0 0 2px #3b82f680}.organSystemCircle.lowConfidence{opacity:.7}.organSystemCircle.lowConfidence:hover{opacity:1}.circleContainer{position:relative;width:90px;height:90px}.progressRings{transform:rotate(-90deg)}.outerRingBg,.innerRingBg{fill:none;stroke:#e5e7eb}.outerRing{fill:none;stroke:#6b7280;stroke-linecap:round;transition:stroke-dashoffset .8s cubic-bezier(.4,0,.2,1)}.innerRing{fill:none;stroke-linecap:round;transition:stroke-dashoffset .8s cubic-bezier(.4,0,.2,1),stroke .3s ease}.centerContent{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;justify-content:center}.systemIcon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;margin-bottom:2px}.scoreValue{font-size:18px;font-weight:700;line-height:1}.systemName{margin-top:6px;font-size:12px;font-weight:500;color:#374151;text-align:center;word-wrap:break-word;line-height:1.2}.lowConfidence .systemName{color:#9ca3af}.focusModalOverlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:10000;padding:16px}.focusModalCard{background:#fff;border-radius:16px;padding:20px;width:calc(100vw - 48px);max-width:360px;height:min(355px,80vh);display:flex;flex-direction:column;overflow:hidden;box-shadow:0 8px 32px #0003}.focusModalTop{display:flex;gap:16px;margin-bottom:12px;flex-shrink:0;align-items:flex-start}.focusCircle{flex-shrink:0;display:flex;flex-direction:column;align-items:center}.focusInfo{flex:1;display:flex;flex-direction:column;gap:6px;min-width:0;justify-content:center}.focusQuickStatus{font-size:13px;line-height:1.4;color:#374151;font-weight:400}.focusQuickStatus strong{font-weight:600}.statusActionLink{background:none;border:none;padding:0;font-family:inherit;font-size:inherit;font-weight:600;color:#3b82f6;cursor:pointer;text-decoration:underline;-webkit-tap-highlight-color:transparent}.focusMiddleRow{display:flex;gap:10px;margin-bottom:8px;flex:1;min-height:0;align-items:stretch}.focusConfidenceText{flex:1;font-size:11px;line-height:1.4;color:#6b7280;font-weight:400;min-width:0}.focusConfidenceText strong{font-weight:600;color:#374151}.organSystemCircle.blurred{filter:blur(3px);opacity:.4;pointer-events:none}.focusMoreTests{display:flex;flex-direction:column;gap:4px;flex:1;min-width:0;min-height:0}.focusMoreTestsScroll{display:flex;flex-direction:column;gap:6px;padding:6px 8px;background-color:#f5f5f5;border-radius:8px;flex:1;min-height:0;overflow-y:auto}.focusDescription{font-size:12px;line-height:1.5;color:#4b5563;padding:12px;background-color:#f9fafb;border-radius:8px;flex-shrink:0}.indicatorsLabel{font-size:10px;font-weight:700;color:#374151;text-transform:uppercase;letter-spacing:.5px}.missingSection{display:flex;flex-direction:column;gap:3px}.missingLabel{font-size:9px;font-weight:600;color:#9ca3af;text-transform:uppercase;letter-spacing:.5px}.missingList{display:flex;flex-wrap:wrap;gap:3px}.missingMarkerTag{font-size:10px;font-weight:500;padding:2px 6px;border-radius:6px;background-color:#e5e7eb;color:#374151;white-space:nowrap}.missingMarkerTag.major{background-color:#fef3c7;color:#92400e}.actionPill{display:flex;align-items:center;justify-content:center;gap:4px;padding:8px 12px;background-color:#1f2937;color:#fff;border:none;border-radius:8px;font-family:Funnel Sans,sans-serif;font-size:12px;font-weight:500;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background-color .15s ease}.actionPill:active{background-color:#374151}.trendArrow{position:absolute;bottom:-3px;right:-3px;width:18px;height:18px;cursor:pointer;transition:transform .15s ease;border-radius:2px}.trendArrow:hover,.trendArrow:focus{transform:scale(1.2);outline:none}.trendArrow.timelineBtn{width:14px;height:14px;padding:2px;bottom:-6px;right:-6px;background:#fff;border-radius:50%;box-shadow:0 1px 3px #00000026;opacity:.6;transition:opacity .15s ease,transform .15s ease,box-shadow .15s ease}.trendArrow.timelineBtn:hover,.trendArrow.timelineBtn:focus{opacity:1;box-shadow:0 1px 5px #00000038}.focusTimelineContainer{flex:1;min-height:0;margin-bottom:12px}.actionPill.viewTestsBottom{margin-top:12px;width:100%;flex-shrink:0}.segmentedControl{display:flex;position:relative;width:100%;margin-bottom:12px;flex-shrink:0;border-radius:8px;overflow:hidden;border:1px solid #d1d5db;background-color:#f3f4f6}.segmentSlider{position:absolute;top:0;left:0;width:50%;height:100%;background-color:#1f2937;transition:transform .3s cubic-bezier(.4,0,.2,1);z-index:0}.segmentSlider.sliderLeft{transform:translate(0)}.segmentSlider.sliderRight{transform:translate(100%)}.segmentButton{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:8px 12px;background:transparent;border:none;cursor:pointer;font-size:13px;font-weight:500;transition:color .3s cubic-bezier(.4,0,.2,1);position:relative;z-index:1;-webkit-tap-highlight-color:transparent}.segmentButton.active{color:#fff}.segmentButton:not(.active){color:#6b7280}.segmentButton svg{flex-shrink:0}.segmentLeft{border-top-left-radius:7px;border-bottom-left-radius:7px}.segmentRight{border-top-right-radius:7px;border-bottom-right-radius:7px}.helix-loader{display:flex;align-items:center;justify-content:center;position:relative}.helix-strand{position:absolute;display:flex;flex-direction:column;align-items:center;gap:var(--helix-gap, 2px)}.helix-dot{width:var(--dot-size);height:3px;border-radius:var(--dot-size);background:var(--helix-color);animation:helix-orbit var(--speed) linear infinite;animation-delay:var(--delay)}.helix-strand-b .helix-dot{animation-name:helix-orbit-b}@keyframes helix-orbit{0%{transform:translate(var(--radius));scale:.7;opacity:.55}25%{transform:translate(0);scale:1;opacity:.95}50%{transform:translate(calc(-1 * var(--radius)));scale:.7;opacity:.55}75%{transform:translate(0);scale:.35;opacity:.15}to{transform:translate(var(--radius));scale:.7;opacity:.55}}@keyframes helix-orbit-b{0%{transform:translate(calc(-1 * var(--radius)));scale:.7;opacity:.55}25%{transform:translate(0);scale:.35;opacity:.15}50%{transform:translate(var(--radius));scale:.7;opacity:.55}75%{transform:translate(0);scale:1;opacity:.95}to{transform:translate(calc(-1 * var(--radius)));scale:.7;opacity:.55}}.organSystemDashboard{width:100%;padding:16px;box-sizing:border-box}.organSystemDashboard.loading{display:flex;align-items:center;justify-content:center;min-height:200px}.organSystemDashboard.empty{display:flex;align-items:center;justify-content:center;min-height:130px}.emptyText{color:#9ca3af;font-size:14px}.systemsGrid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;justify-items:center}@media(max-width:768px){.systemsGrid{grid-template-columns:repeat(2,1fr);gap:8px}.organSystemDashboard{padding:8px}}.modal-overlay{position:fixed!important;top:0!important;left:0!important;right:0!important;bottom:0!important;background:#00000080;display:flex!important;align-items:center!important;justify-content:center!important;padding:5px;box-sizing:border-box}.system-modal{display:flex;flex-direction:column;background-color:#fff;max-width:100%;width:100%;max-height:80vh;box-sizing:border-box;padding:20px;border-radius:8px;overflow-y:auto;box-shadow:0 4px 12px #00000026}.test-group{margin-top:16px}.test-group h4{margin:0 0 8px;font-size:.95em;color:#555;font-weight:600}.test-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:6px 12px}.test-list li{padding:6px 12px;background-color:#f5f5f5;border-radius:4px;font-size:.9em;color:#333;border-left:3px solid #4caf50}.system-modal::-webkit-scrollbar{width:10px;border-radius:0 8px 8px 0}.system-modal::-webkit-scrollbar-thumb{background:#888;border-radius:5px}.system-modal::-webkit-scrollbar-thumb:hover{background:#666}@media(max-width:768px){.system-modal{max-width:95%;max-height:90vh;padding:16px}.markers-table{font-size:.9em}.markers-table th,.markers-table td{padding:8px}@media(max-width:480px){.markers-table{display:block;overflow-x:auto}.weight-bar{flex-direction:column;align-items:flex-start}.weight-bar span{min-width:auto}}}.contentHeader{display:flex;justify-content:space-between;box-sizing:border-box;padding:0 30px;align-items:center;height:60px;width:100%;font-size:17px;flex-shrink:0;border-bottom:1px solid rgba(0,0,0,.2);background-color:#fff;position:sticky;top:0;z-index:9999!important;transition:transform .3s ease}.contentHeader .brandName{font-size:20px;font-weight:600;letter-spacing:.5px;cursor:pointer;margin:0;color:#1f2937;transition:color .15s ease;-webkit-tap-highlight-color:transparent;outline:none}.contentHeader .brandName:hover{color:#4b5563}.contentHeader .headerTabControl{position:absolute;left:50%;transform:translate(-50%);width:240px}.contentHeader .headerTabControl .segmentedControl{margin-bottom:0}.contentHeader .headerActions{display:flex;align-items:center;margin-left:auto;margin-right:15px}.contentHeader .up-chevron-btn{position:absolute;bottom:4px;left:50%;transform:translate(-50%);display:flex;align-items:center;justify-content:center;width:44px;height:18px;background:none;border:none;border-radius:4px;cursor:pointer;color:#9ca3af;-webkit-tap-highlight-color:transparent;transition:color .15s ease,background-color .15s ease;padding:0}.contentHeader .up-chevron-btn:hover{background-color:#0000000d;color:#6b7280}.contentHeader .up-chevron-btn:active{background-color:#00000014;color:#374151}.contentHeader.header-hidden{transform:translateY(-100%)}.contentHeader .accountContainer{display:flex;justify-content:center;align-items:center;position:relative}.contentHeader img{height:35px;cursor:pointer;border-radius:50%;-webkit-tap-highlight-color:transparent;outline:none}.profileDropdown{position:absolute;top:100%;right:0;margin-top:4px;width:12rem;background-color:#fff;border-radius:.375rem;box-shadow:0 2px 8px #00000026;border:1px solid rgba(0,0,0,.1);z-index:9999!important}.dropdown-user-info{padding:8px 1rem 10px;display:flex;flex-direction:column;gap:2px}.dropdown-user-name{font-size:14px;font-weight:600;color:#111827;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dropdown-user-email{font-size:12px;color:#6b7280;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.profileDropdown a{display:block;padding:.5rem 1rem;color:#4a4a4a;text-decoration:none}.profileDropdown a:hover{background-color:#f0f0f0;cursor:pointer}.profileDropdown .dropdown-divider{height:1px;background-color:#00000026;margin:4px 0}@media(max-width:768px){.contentHeader{padding:0 16px;height:56px}.contentHeader .brandName{font-size:18px}.contentHeader .headerActions{margin-right:12px}.contentHeader img{height:32px}}.bottom-nav{position:fixed;bottom:0;left:0;right:0;height:60px;background-color:#fff;border-top:1px solid rgba(0,0,0,.1);display:flex;justify-content:space-around;align-items:center;z-index:9999!important;padding-bottom:env(safe-area-inset-bottom,0)}.nav-tab{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;background:none;border:none;padding:8px 24px;cursor:pointer;color:#6b7280;transition:color .2s ease;-webkit-tap-highlight-color:transparent}.nav-tab svg{transition:transform .2s ease}.nav-tab span{font-size:11px;font-weight:500;letter-spacing:.3px}.nav-tab.active{color:#1f2937}.nav-tab.active svg{stroke:#1f2937;transform:scale(1.05)}.nav-tab:active{transform:scale(.95)}.fab-container{position:fixed;bottom:calc(70px + env(safe-area-inset-bottom,0));right:20px;z-index:9999!important;display:flex;flex-direction:column;align-items:flex-end}.fab-button{width:56px;height:56px;border-radius:50%;background-color:#1f2937;border:none;box-shadow:0 4px 12px #00000040;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .2s ease,background-color .2s ease,box-shadow .2s ease;-webkit-tap-highlight-color:transparent}.fab-button:hover{background-color:#374151;box-shadow:0 6px 16px #0000004d}.fab-button:active{transform:scale(.95)}.fab-button.open{background-color:#374151}.fab-button.disabled{opacity:.7;cursor:not-allowed}.fab-icon{color:#fff;transition:transform .3s ease}.fab-button.open .fab-icon{transform:rotate(45deg)}.fab-spinner{width:24px;height:24px;border:3px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:fab-spin .8s linear infinite}@keyframes fab-spin{to{transform:rotate(360deg)}}.fab-speed-dial{display:flex;flex-direction:column;gap:12px;margin-bottom:16px;animation:fab-slide-up .2s ease-out}@keyframes fab-slide-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.fab-option{display:flex;align-items:center;gap:10px;padding:10px 16px;background-color:#fff;border:none;border-radius:24px;box-shadow:0 2px 8px #00000026;cursor:pointer;white-space:nowrap;font-family:Funnel Sans,sans-serif;font-size:14px;font-weight:500;color:#1f2937;transition:background-color .15s ease,transform .15s ease;-webkit-tap-highlight-color:transparent}.fab-option:hover{background-color:#f3f4f6}.fab-option:active{transform:scale(.97)}.fab-option:disabled{opacity:.6;cursor:not-allowed}.fab-option svg{flex-shrink:0}.fab-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0000004d;z-index:999;animation:fab-fade-in .2s ease}@keyframes fab-fade-in{0%{opacity:0}to{opacity:1}}.testDeleteContainer{display:flex;position:fixed;left:0;top:0;width:100%;height:100%;-webkit-backdrop-filter:brightness(.92);backdrop-filter:brightness(.92);justify-content:center;align-items:center;z-index:99}.testDeleteContainer .testDeletePopup{display:flex;padding:40px 30px;border-radius:21px;background-color:#fff;flex-direction:column;align-items:center;width:435px;max-width:93%;box-sizing:border-box;gap:35px}.testDeleteContainer .testDeletePopup .imageContainer{display:flex;padding:20px;background-color:#ff000012;border-radius:40%}.testDeleteContainer .testDeletePopup .imageContainer img{height:80px;position:relative}.testDeleteContainer .testDeletePopup h3{font-weight:500;letter-spacing:1%;font-size:16px;max-width:90%;text-align:center}.testDeleteContainer .testDeletePopup .actions{display:flex;gap:10px;width:100%;justify-content:center}.testDeleteContainer .testDeletePopup .actions button{height:40px;width:100%;border:none;border-radius:15px;font-weight:550;letter-spacing:1%}.testDeleteContainer .testDeletePopup .actions .cancel{border:1px solid rgba(0,0,0,.15);background-color:transparent}.testDeleteContainer .testDeletePopup .actions .confirm{background-color:#ff4c4c;color:#fff}.spinner{border:2px solid rgba(0,0,0,.1);border-top:2px solid #666;border-radius:50%;animation:spin .8s linear infinite;display:inline-block;margin-left:8px}.spinner.bounce{animation:bounce 1.4s infinite ease-in-out;border:none;background-color:#666;border-radius:50%}@keyframes bounce{0%,80%,to{transform:scale(0);opacity:1}40%{transform:scale(1);opacity:.7}}.share-button{display:flex;align-items:center;justify-content:center;gap:8px;padding:8px 16px;background-color:#1f2937;color:#fff;border:none;border-radius:20px;font-family:Funnel Sans,sans-serif;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .15s ease,transform .15s ease;-webkit-tap-highlight-color:transparent}.share-button:hover:not(:disabled){background-color:#374151}.share-button:active:not(:disabled){transform:scale(.97)}.share-button:disabled{opacity:.6;cursor:not-allowed}.share-button.icon-variant{width:40px;height:40px;padding:0;border-radius:50%}.share-button.icon-variant span{display:none}.share-spinner{width:18px;height:18px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:share-spin .8s linear infinite}@keyframes share-spin{to{transform:rotate(360deg)}}.mode-toggle{display:flex;flex-direction:column;gap:8px;padding-bottom:15px;border-bottom:1px solid rgba(0,0,0,.1);margin-bottom:15px}.mode-toggle .mode-buttons{display:flex;flex-direction:row}.mode-toggle .mode-btn{flex:1;padding:10px 20px;border:1px solid #ddd;background-color:#f5f5f5;font-size:14px;font-weight:500;font-family:Funnel Sans,sans-serif;cursor:pointer;transition:all .15s ease;letter-spacing:.3px}.mode-toggle .mode-btn:first-child{border-radius:20px 0 0 20px;border-right:none}.mode-toggle .mode-btn:last-child{border-radius:0 20px 20px 0}.mode-toggle .mode-btn:hover:not(.active){background-color:#eee}.mode-toggle .mode-btn.active{background-color:#636363;color:#fff;border-color:#636363}.mode-toggle .mode-btn:first-child.active{background-color:#22c55e;border-color:#22c55e}.mode-toggle .mode-btn:last-of-type.active{background-color:#eab308;border-color:#eab308}.mode-toggle .mode-description{font-size:12px;color:#666;text-align:center;padding:0 5px;line-height:1.4}.mode-toggle .therapy-warning{color:#b45309}.mode-toggle.compact{padding-bottom:0;border-bottom:none;margin-bottom:0;flex-shrink:0}.mode-toggle.compact .mode-description{display:none}.mode-toggle.compact .mode-btn{padding:8px 16px;font-size:13px}@media(max-width:768px){.mode-toggle .mode-btn{padding:8px 16px;font-size:13px}.mode-toggle .mode-description{font-size:11px}}.autocompleteDropdown{position:absolute;z-index:1000;background-color:#fff;border:1px solid rgba(0,0,0,.2);border-radius:8px;box-shadow:#959da533 0 8px 24px;max-height:200px;min-width:200px;overflow:hidden;font-family:Inter,sans-serif;animation:slideDown .15s ease-out forwards;transform:translateY(-8px);opacity:.5}.suggestionsList{display:flex;flex-direction:column;max-height:160px;overflow-y:auto;flex-shrink:0}.suggestionItem{padding:12px 16px;font-size:14px;font-weight:450;letter-spacing:.3px;color:#000000d9;cursor:pointer;border-bottom:1px solid rgba(0,0,0,.05);transition:background-color 75ms ease-in-out;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex-shrink:0;min-height:5px}.suggestionItem:last-child{border-bottom:none}.suggestionItem:hover{background-color:#f8f8f8}.suggestionItem.selected{background-color:#ebebeb;color:#000000e6}.scrollIndicator{display:flex;align-items:center;justify-content:space-between;padding:8px 16px;background-color:#f8f8f8;border-top:1px solid rgba(0,0,0,.1);font-size:12px;color:#0009}.scrollBar{width:60px;height:4px;background-color:#0000001a;border-radius:2px;position:relative;overflow:hidden}.scrollThumb{width:30%;height:100%;background-color:#0000004d;border-radius:2px;animation:scrollAnimation 2s ease-in-out infinite}@keyframes scrollAnimation{0%,to{transform:translate(0)}50%{transform:translate(200%)}}.moreItemsText{font-style:italic;font-weight:400}.suggestionsList::-webkit-scrollbar{width:6px}.suggestionsList::-webkit-scrollbar-track{background:transparent}.suggestionsList::-webkit-scrollbar-thumb{background:#a5a5a599;border-radius:3px}.suggestionsList::-webkit-scrollbar-thumb:hover{background:#a5a5a5cc}.detailedTestChart{background-color:#fff;border-radius:12px;padding:12px 0;animation:detailedChartFadeIn .2s ease-out}@keyframes detailedChartFadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.detailedTestChart .chartContainer{min-height:200px}.detailedTestChart .noData{text-align:center;color:#9ca3af;font-size:13px;padding:40px 0}.detailedChartTooltip{background-color:#fff;border:1px solid #e5e7eb;padding:8px 12px;border-radius:6px;box-shadow:#0000001a 0 4px 12px}.detailedChartTooltip .tooltipDate{margin:0;font-size:11px;color:#6b7280}.detailedChartTooltip .tooltipValue{margin:4px 0 0;font-size:14px;font-weight:600;color:#1a1a1a}.modal-overlay{display:flex;justify-content:center;align-items:center;position:fixed;top:0;left:0;z-index:99;width:100vw;height:100vh;-webkit-backdrop-filter:brightness(.8);backdrop-filter:brightness(.8)}.marker-modal{display:flex;flex-direction:column;background-color:#fff;max-width:600px;width:90%;max-height:80vh;box-sizing:border-box;padding:20px;border-radius:8px;overflow-y:auto;box-shadow:0 4px 12px #00000026}.modal-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:12px;border-bottom:1px solid #e0e0e0;margin-bottom:16px}.modal-header h2{margin:0;font-size:1.4em;color:#333}.close-btn{background:none;border:none;font-size:2em;color:#888;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .2s,color .2s}.close-btn:hover{background-color:#f0f0f0;color:#333}.modal-body{display:flex;flex-direction:column;gap:16px}.modal-body section{margin-bottom:8px}.modal-body section h3{margin:0 0 8px;font-size:1.1em;color:#555;font-weight:600}.modal-body section p{margin:0;line-height:1.6;color:#333}.modal-body section ul{margin:0;padding-left:20px;line-height:1.6}.modal-body section ul li{margin-bottom:6px;color:#333}.modal-body section ul li strong{color:#222}.sources-section{border-top:1px solid #e0e0e0;padding-top:12px;margin-top:8px}.sources-section h3{font-size:.95em;color:#666}.sources-list{list-style:none;padding:0;margin:0}.sources-list li{margin-bottom:6px}.sources-list a{color:#1976d2;text-decoration:none;font-size:.9em;transition:color .2s}.sources-list a:hover{color:#1565c0;text-decoration:underline}.see-more-link{background:none;border:none;padding:0;font-size:12px;font-family:inherit;line-height:1.4;color:#888;cursor:pointer;text-decoration:none;transition:color .2s;margin-top:4px;display:inline-block}.see-more-link:hover{color:#555;text-decoration:underline}.marker-modal::-webkit-scrollbar{width:10px;border-radius:0 8px 8px 0}.marker-modal::-webkit-scrollbar-thumb{background:#888;border-radius:5px}.marker-modal::-webkit-scrollbar-thumb:hover{background:#666}@media(max-width:768px){.marker-modal{max-width:95%;max-height:90vh;padding:16px}.modal-header h2{font-size:1.2em}.modal-body section h3{font-size:1em}}.systemIndex{position:fixed;right:4px;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;align-items:center;justify-content:space-evenly;z-index:50;padding:6px 2px;border-radius:12px;background:#fffc;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);touch-action:none;-webkit-user-select:none;user-select:none;height:60vh;min-height:240px;max-height:480px}.systemIndex.dragging{background:#fffffff2;box-shadow:0 2px 12px #0000001a}.systemIndexItem{display:flex;align-items:center;justify-content:center;padding:2px 6px;cursor:pointer;opacity:.4;transition:opacity .1s ease,transform .1s ease;-webkit-tap-highlight-color:transparent}.systemIndexItem svg{width:16px;height:16px}.systemIndexItem.active{opacity:1;transform:scale(1.25)}.systemIndexLabel{font-size:9px;font-weight:700;letter-spacing:.5px;font-family:Funnel Sans,sans-serif;line-height:1}.systemIndexItem[data-system=all],.systemIndexItem[data-system=_sys]{padding-bottom:4px;margin-bottom:2px;border-bottom:1px solid rgba(0,0,0,.1)}.systemIndexItem[data-system=_other]{padding-top:4px;margin-top:2px;border-top:1px solid rgba(0,0,0,.1)}.vpage-tests>.systemIndex{position:absolute}.test-details-page{background-color:#f9fafb;font-family:Funnel Sans,sans-serif}.test-details-tabs{display:flex;gap:8px;padding:8px 16px 12px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.test-details-tabs::-webkit-scrollbar{display:none}.tab-pill{flex-shrink:0;padding:8px 16px;background-color:#e5e7eb;border:none;border-radius:20px;font-family:Funnel Sans,sans-serif;font-size:14px;font-weight:450;color:#1f2937;cursor:pointer;transition:background-color .15s ease,color .15s ease;-webkit-tap-highlight-color:transparent}.tab-pill:hover{background-color:#d1d5db}.tab-pill.selected{background-color:#1f2937;color:#fff}.tab-pill.new-test{border:2px dashed #6b7280;background-color:transparent}.tab-pill.new-test.selected{border-color:#1f2937;background-color:#1f2937;color:#fff}.system-icon-filters{display:flex;gap:8px;padding:0 16px 12px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.system-icon-filters::-webkit-scrollbar{display:none}.system-icon-btn{display:flex;align-items:center;gap:6px;flex-shrink:0;padding:6px 12px;background-color:#f3f4f6;border:1.5px solid transparent;border-radius:20px;font-family:Funnel Sans,sans-serif;font-size:12px;font-weight:500;color:#4b5563;cursor:pointer;transition:background-color .15s ease,border-color .15s ease;-webkit-tap-highlight-color:transparent}.system-icon-btn svg{width:16px;height:16px}.system-icon-btn:hover{background-color:#e5e7eb}.system-icon-btn.active{background-color:#1f2937;color:#fff;border-color:#1f2937}.system-icon-btn.active svg{filter:brightness(0) invert(1)}.test-details-search{display:flex;align-items:center;gap:8px;margin:0 16px 12px;padding:10px 14px;background-color:#fff;border:1px solid rgba(0,0,0,.12);border-radius:12px;transition:border-color .15s ease}.test-details-search:focus-within{border-color:#1f2937}.search-icon{flex-shrink:0}.search-input{flex:1;border:none;outline:none;font-family:Funnel Sans,sans-serif;font-size:14px;color:#1f2937;background:transparent}.search-input::placeholder{color:#9ca3af}.search-clear{display:flex;align-items:center;justify-content:center;width:24px;height:24px;background:none;border:none;border-radius:50%;cursor:pointer;padding:0;-webkit-tap-highlight-color:transparent}.search-clear:hover{background-color:#f3f4f6}.combined-filters{padding:0 16px 12px}.filter-scroll-row{display:flex;align-items:center;gap:6px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.filter-scroll-row::-webkit-scrollbar{display:none}.filter-chip{flex-shrink:0;padding:5px 12px;border:none;border-radius:16px;font-family:Funnel Sans,sans-serif;font-size:12px;font-weight:500;cursor:pointer;transition:background-color .15s ease,color .15s ease;-webkit-tap-highlight-color:transparent}.filter-chip.date{background-color:#f3f4f6;color:#6b7280}.filter-chip.date:hover{background-color:#e5e7eb}.filter-chip.date.active{background-color:#1f2937;color:#fff}.filter-divider{flex-shrink:0;width:1px;height:20px;background-color:#d1d5db;margin:0 2px}.filter-chip.status-chip{font-weight:600;color:#fff}.filter-chip.status-chip.optimal{background-color:#22c55ee6}.filter-chip.status-chip.dysfunctional{background-color:#eab308e6}.filter-chip.status-chip.abnormal{background-color:#ef4444e6}.filter-chip.status-chip.inactive{background-color:#9ca3af}.clear-all-btn{flex-shrink:0;background:none;border:none;font-family:Funnel Sans,sans-serif;font-size:12px;font-style:italic;color:#6b7280;cursor:pointer;padding:5px 8px;white-space:nowrap}.clear-all-btn:hover{color:#1f2937}.organ-system-group{border:1.5px solid #e5e7eb;border-radius:14px;padding:12px;background-color:#fff;display:flex;flex-direction:column;gap:8px}.organ-system-group-header{display:flex;align-items:center;gap:8px;padding:4px 4px 8px;font-family:Funnel Sans,sans-serif;font-size:14px;font-weight:600;color:#1f2937;border-bottom:1px solid #f3f4f6}.organ-system-group-header svg{width:20px;height:20px}.organ-system-group:not(:has(.testChartEntry)){display:none}.test-details-list{display:flex;flex-direction:column;gap:12px;padding:0 28px 40px 16px}.test-details-loading,.test-details-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:60px 16px;color:#6b7280}.clear-filters-btn{padding:10px 20px;background-color:#1f2937;color:#fff;border:none;border-radius:20px;font-family:Funnel Sans,sans-serif;font-size:14px;font-weight:500;cursor:pointer}.test-details-list .testChartEntry{background-color:#fff;border-radius:12px;padding:14px 16px;height:auto}.organ-system-group .testChartEntry{box-shadow:none;border-bottom:1px solid #f3f4f6;border-radius:0;padding:10px 4px}.organ-system-group .testChartEntry:last-child{border-bottom:none}.test-details-list .testChartEntry .rowContent{display:flex;flex-direction:column;width:100%;gap:8px}.test-details-list .testChartEntry .name{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}.test-details-list .testChartEntry .topWrapper{display:flex;align-items:center;width:100%;gap:8px;overflow:hidden;min-width:0}.test-details-list .testChartEntry .status{padding:3px 10px;font-size:12px;border-radius:20px;color:#fff;font-weight:700;flex-shrink:0;background-color:#22c55ecc}.test-details-list .testChartEntry .status.high,.test-details-list .testChartEntry .status.low{background-color:#ef4444cc}.test-details-list .testChartEntry .status.elevated,.test-details-list .testChartEntry .status.diminished{background-color:#eab308cc}.test-details-list .testChartEntry .plot{width:100%;height:56px;position:relative;overflow:hidden;border-radius:10px}.test-details-list .testChartEntry .plotContainer{height:56px}.test-details-list .testChartEntry .accordionContent{width:100%;overflow:hidden;max-height:0;opacity:0;transition:max-height .3s ease,opacity .2s ease}.test-details-list .testChartEntry.selected .accordionContent{max-height:500px;opacity:1}.test-details-list .testChartEntry .range{display:flex;flex-direction:column;font-size:12px;gap:3px}.test-details-list .testChartEntry .rangeLabel.functional{color:#22c55e}.test-details-list .testChartEntry .rangeLabel.lab{color:#9ca3af}.testChartEntry .marker-info{margin-top:5px;padding-bottom:4px}.testChartEntry .marker-info-description{font-size:12px;color:#6b7280;margin:0;line-height:1.4}.testChartEntry .marker-info-blurb{font-size:12px;color:#6b7280;margin:4px 0 0;line-height:1.4;padding-left:8px}.page-tests>.alphabetIndex,.page-tests>.systemIndex{position:absolute;right:2px;top:50%;transform:translateY(-50%);z-index:50}.homeTemp{display:flex;min-height:100vh;font-family:Funnel Sans}.homeTemp .sidebar img{width:50px}.homeTemp .content{display:flex;flex-direction:column;align-items:center;width:100%}.homeTemp .content .contentBody{display:flex;flex-direction:column;align-items:center;width:100%;min-height:calc(100vh - 60px);padding:25px 0 0;box-sizing:border-box;max-width:1920px}.homeTemp .content .contentBody .visualizer{display:flex;flex-direction:column;box-sizing:border-box;padding:0 60px 35px 120px;width:100%;flex-grow:0;gap:15px}.homeTemp .visualizer .tabs{display:flex;flex-wrap:wrap;gap:8px;row-gap:12px;border-top:1px solid rgba(0,0,0,.1);padding-top:25px;align-items:center}.homeTemp .visualizer .tabs .tabEntry{padding:0 21px;height:40px;display:flex;align-items:center;background-color:#e5e7eb;border:none;border-radius:20px;letter-spacing:.5px;font-weight:450;font-size:14px;cursor:pointer;gap:8px;transition:background-color .15s ease,color .15s ease;outline:none}.homeTemp .visualizer .tabs .tabEntry:hover:not(.selected){background-color:#d1d5db}.homeTemp .visualizer .tabs .tabEntry:focus,.homeTemp .visualizer .tabs .tabEntry:focus-visible{outline:none}.homeTemp .visualizer .tabs .selected{background-color:#636363;color:#fff}.homeTemp .visualizer .tabs .selected:hover{background-color:#525252}.homeTemp .visualizer .tabs .newTest{border:2px dashed black;box-sizing:border-box}.homeTemp .visualizer .tabs .refreshButton{padding:0;width:40px;height:40px;min-width:40px;min-height:40px;border-radius:50%;background:none;border:1px solid #ccc;flex-shrink:0;display:flex;align-items:center;justify-content:center;margin-right:10px;cursor:pointer;font-size:20px;transition:background-color .2s ease,border-color .2s ease}.homeTemp .visualizer .tabs .refreshButton:hover:not(:disabled){background-color:#f0f0f0;border-color:#999}.homeTemp .visualizer .tabs .refreshButton:disabled{opacity:.6;cursor:not-allowed}.homeTemp .visualizer .addTest{height:40px;width:100%;border-radius:100%;background-color:#ebebeb;border:none;display:flex;justify-content:center;align-items:center;transition:background-color .05s ease-in-out}.homeTemp .visualizer .addTest img{height:23px}.homeTemp .visualizer .addTestContainer{position:relative;align-self:flex-end;width:40px}.homeTemp .visualizer .addTestPopover{position:absolute;top:calc(100% + 5px);width:145px;display:flex;flex-direction:column;justify-content:center;align-items:center;box-shadow:#00000026 1.95px 1.95px 2.6px;border-radius:10px;overflow:hidden;transform:translateY(-8px);opacity:.5;animation:slideDown .15s ease-out forwards;z-index:100;left:0}.homeTemp .visualizer .addTestPopover.tablet{left:auto;right:0}@keyframes slideDown{to{transform:translateY(0);opacity:1}}.homeTemp .visualizer .addTestPopover button{width:100%;padding:10px 10px 10px 20px;border:none;background-color:#f7f7f7;letter-spacing:.2px;transition:background-color .07s ease-in-out;text-align:left;font-family:Funnel Sans;font-size:14px;font-weight:450;letter-spacing:.3px}.homeTemp .visualizer .addTestPopover button:hover{background-color:#ececec}.homeTemp .visualizer .addTest:hover{background-color:#e2e2e2}.homeTemp .visualizer .tags{display:flex;gap:10px;justify-content:flex-end;align-items:center}.homeTemp .visualizer .tags>button{padding:7px 14px;border:none;font-size:13px;color:#fff;font-weight:600;border-radius:20px}.homeTemp .visualizer .tags .categoryFilter{padding:7px 14px;border:1px solid rgba(0,0,0,.3);border-radius:20px;font-size:13px;font-weight:500;font-family:Funnel Sans;background-color:#fff;cursor:pointer;outline:none;transition:border-color 75ms ease-in-out,background-color 75ms ease-in-out;min-width:150px}.homeTemp .visualizer .tags .categoryFilter:hover{border-color:#00000080;background-color:#f9f9f9}.homeTemp .visualizer .tags .categoryFilter:focus{border-color:#007bff;background-color:#fff}.desktop-search-wrapper{position:relative;display:flex;align-items:center;margin-right:auto}.desktop-search-icon{position:absolute;left:10px;pointer-events:none}.desktop-search-input{padding:7px 28px 7px 30px;border:1px solid rgba(0,0,0,.3);border-radius:20px;font-size:13px;font-weight:500;font-family:Funnel Sans,sans-serif;background-color:#fff;outline:none;width:160px;transition:border-color 75ms ease-in-out,width .2s ease}.desktop-search-input:focus{border-color:#007bff;width:200px}.desktop-search-input::placeholder{color:#9ca3af}.desktop-search-clear{position:absolute;right:6px;background:none;border:none;padding:2px;cursor:pointer;display:flex;align-items:center;border-radius:50%}.homeTemp .visualizer .tags .clear{background-color:transparent;color:#000;font-weight:400;font-style:italic;padding-right:5px}.homeTemp .visualizer .edits{display:flex;height:40px;justify-content:flex-end;margin-top:16px;gap:10px}.homeTemp .visualizer .edits button{aspect-ratio:1 / 1;border:none;border-radius:25px}.homeTemp .visualizer .edits button img{height:16px}.homeTemp .visualizer .edits .edit{background-color:#0000000e}.homeTemp .visualizer .edits .delete{background-color:#ff000018}.homeTemp .visualizer .testDisplay{display:flex;flex-direction:column;align-items:center;gap:12px;background-color:#f8f8f8;border-radius:10px;padding:30px 40px;flex-grow:0;overflow:hidden}.homeTemp .visualizer .testDisplay:has(.newTestForm){overflow:visible}.homeTemp .visualizer .testDisplay .emptyMarkersMessage{padding:40px 20px;text-align:center;color:#666;font-style:italic;font-size:14px}.homeTemp .visualizer .testDisplay .organ-system-group{border:1.5px solid #e5e7eb;border-radius:14px;padding:12px;background-color:#fff;display:flex;flex-direction:column;gap:8px;width:100%;box-sizing:border-box}.homeTemp .visualizer .testDisplay .organ-system-group-header{display:flex;align-items:center;gap:8px;padding:4px 4px 8px;font-family:Funnel Sans,sans-serif;font-size:14px;font-weight:600;color:#1f2937;border-bottom:1px solid #f3f4f6}.homeTemp .visualizer .testDisplay .organ-system-group-header svg{width:20px;height:20px}.homeTemp .visualizer .testDisplay .organ-system-group:not(:has(.testChartEntry)){display:none}.homeTemp .visualizer .testDisplay .organ-system-group .testChartEntry{box-shadow:none;border-bottom:1px solid #f3f4f6;border-radius:0;padding:10px 4px;height:auto;min-height:75px;overflow:visible}.homeTemp .visualizer .testDisplay .organ-system-group .testChartEntry:hover{box-shadow:none}.homeTemp .visualizer .testDisplay .organ-system-group .testChartEntry:last-child{border-bottom:none}.homeTemp .visualizer .testChartEntry{width:100%;height:75px;border-radius:12px;display:flex;justify-content:center;align-items:center;background-color:#fff;padding:0 35px;box-sizing:border-box;flex-shrink:0;gap:20px;box-shadow:#959da51a 0 8px 24px;transition:box-shadow .15s ease,background-color .15s ease;overflow:hidden}.homeTemp .visualizer .testChartEntry:not(.temp):hover{box-shadow:#959da533 0 8px 24px}.homeTemp .visualizer .testChartEntry:not(.detailed):not(.temp){flex-direction:column;align-items:stretch;justify-content:flex-start}.homeTemp .visualizer .testChartEntry.selected:not(.temp){box-shadow:0 0 0 2px #3b82f680,#3b82f626 0 4px 12px;background-color:#3b82f608;height:auto;flex-direction:column;overflow:visible}.homeTemp .visualizer .testChartEntry.detailed{flex-wrap:wrap}.homeTemp .visualizer .testChartEntry.detailed .topWrapper{flex:1;width:auto}.homeTemp .visualizer .testChartEntry.detailed.selected{flex-direction:row;align-items:center;height:auto}.homeTemp .visualizer .testChartEntry.detailed .accordionContent{flex-basis:100%}.homeTemp .visualizer .testChartEntry .rowContent{display:flex;align-items:center;width:100%;gap:20px;min-height:75px}.homeTemp .visualizer .testChartEntry .accordionContent{width:100%;overflow:hidden;max-height:0;opacity:0;transition:max-height .3s ease,opacity .2s ease}.homeTemp .visualizer .testChartEntry.selected:not(.temp) .accordionContent{max-height:500px;opacity:1}.homeTemp .visualizer .testChartEntry .rangeLabel{font-size:11px;white-space:nowrap}.homeTemp .visualizer .testChartEntry .rangeLabel.functional{color:#22c55e}.homeTemp .visualizer .testChartEntry .rangeLabel.lab{color:#9ca3af}.homeTemp .visualizer .testChartEntry .topWrapper{display:flex;align-items:center;width:100%;gap:20px;overflow:hidden;min-width:0}.homeTemp .visualizer .testChartEntry .bottomWrapper{margin-left:auto}.homeTemp .visualizer .testChartEntry .range{display:flex;flex-direction:column;font-size:13px;color:#000000d9;gap:3px;text-align:right}.homeTemp .visualizer .testChartEntry .name{font-size:17px;font-weight:500;letter-spacing:.5px;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:5ch}.homeTemp .visualizer .status{background-color:#22c55ecc;color:#fff;font-weight:700;border-radius:20px;text-align:center}.homeTemp .visualizer .testChartEntry .status{padding:4px 12px;font-size:14px;margin-right:auto;flex-shrink:0}.homeTemp .visualizer .high,.homeTemp .visualizer .low{background-color:#ef4444cc}.homeTemp .visualizer .elevated,.homeTemp .visualizer .diminished{background-color:#eab308cc}.homeTemp .visualizer .tags .inactiveTag{background-color:#b4b4b4}.homeTemp .visualizer .testChartEntry .plot{width:350px;flex-shrink:0;display:flex;justify-content:center;align-items:center;border-radius:10px;height:68px;position:relative;animation:fadeIn .8s ease-in-out;opacity:0;animation-fill-mode:forwards;overflow:hidden}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.homeTemp .visualizer .testChartEntry .valueIcon{position:absolute;height:11px;left:0}.homeTemp .visualizer .testChartEntry.edit input{height:60%;border-radius:10px;border:1px solid rgb(163,163,163);outline:none;box-sizing:border-box;padding:0 20px;width:100%}.homeTemp .visualizer .entryFunctions{display:flex;width:100%;height:35px;justify-content:flex-end}.homeTemp .visualizer .entryFunctions button{background-color:transparent;border:none;font-size:15px;font-weight:500;letter-spacing:.3px;color:#193cd8;font-family:Funnel Sans;padding:0 15px;border-radius:15px}.homeTemp .visualizer .entryFunctions button:disabled{color:#818181}.homeTemp .visualizer .entryFunctions button:hover{background-color:#f1f1f1}.homeTemp .visualizer .inputContainer{display:flex;height:45px;position:relative;background-color:#ebebeb}.homeTemp .visualizer .inputContainer p{position:absolute;background-color:inherit;border-radius:10px;color:#000000a6;top:50%;transform:translateY(-50%);left:10px;font-size:14px;transition:top .04s ease-out,font-size .04s ease-in-out,padding .04s ease-in-out,color .04s ease-in-out;pointer-events:none}.homeTemp .visualizer .inputContainer .topLeftLabel{top:0;font-size:12px;padding:0 4px;color:#000c}.homeTemp .visualizer .temp.selected{outline:2px dashed rgb(109,109,109)}.homeTemp .visualizer .temp .inputContainer input{background-color:transparent;outline:none;border:1px solid rgba(0,0,0,.4);border-radius:5px;box-sizing:border-box;padding:10px;font-size:14px;letter-spacing:.3px;width:100%}.homeTemp .visualizer .temp .error input{border:1px solid rgba(255,0,0,.6)}.homeTemp .visualizer .temp .error p{color:#f009}.homeTemp .visualizer .temp .selectContainer{border-radius:10px;cursor:pointer;padding:8px}.homeTemp .visualizer .temp .selectContainer .customCheckbox{width:16px;height:16px;background-color:transparent;border:2px solid rgba(0,0,0,.4);border-radius:5px;box-sizing:border-box;transition:background-color .04s ease-in-out;position:relative}.homeTemp .visualizer .temp .selectContainer .customCheckbox img{width:70%;filter:invert(1);position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);pointer-events:none;-webkit-user-select:none;user-select:none;opacity:0;animation:fadeIn .1s ease-in-out forwards}.homeTemp .visualizer .selected .selectContainer .customCheckbox{background-color:#3a3a3a;border:2px solid rgb(58,58,58)}.homeTemp .testDisplay::-webkit-scrollbar{width:10px}.homeTemp .testDisplay::-webkit-scrollbar-track{background:transparent}.homeTemp .testDisplay::-webkit-scrollbar-thumb{background:#a5a5a5;border-radius:5px}.testDisplayWrapper{display:flex;gap:0;width:100%}.homeTemp .visualizer .testDisplayWrapper>.testDisplay{flex:1;min-width:0}.desktop-system-panel{position:sticky;top:80px;align-self:flex-start;display:flex;flex-direction:column;width:180px;flex-shrink:0;padding:8px 0;margin-right:8px;max-height:calc(100vh - 120px);overflow-y:auto;transition:width .2s ease}.desktop-system-panel.collapsed{width:44px}.panel-collapse-btn{align-self:flex-start;background:none;border:1px solid #e5e7eb;border-radius:6px;width:28px;height:28px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#6b7280;font-size:16px;margin:0 8px 6px;padding:0;transition:background-color .15s ease}.panel-collapse-btn:hover{background-color:#f3f4f6}.panel-items{display:flex;flex-direction:column;gap:1px}.panel-item{display:flex;align-items:center;gap:8px;padding:6px 10px;border:none;background:none;cursor:pointer;border-radius:8px;transition:background-color .1s ease;text-align:left;white-space:nowrap;color:#6b7280}.panel-item:hover{background-color:#f3f4f6}.panel-item.active{background-color:#eff6ff;color:#1f2937;font-weight:500}.panel-item.dimmed{opacity:.35}.panel-item.dimmed:hover{opacity:.6}.panel-item svg{width:18px;height:18px;flex-shrink:0}.panel-icon-label{font-size:10px;font-weight:700;font-family:Funnel Sans,sans-serif;width:18px;text-align:center;flex-shrink:0}.panel-label{font-size:13px;font-family:Funnel Sans,sans-serif;overflow:hidden;text-overflow:ellipsis}.panel-item[title=Alphabetical],.panel-item[title=Systems],.panel-item[title="Organ Systems"]{padding-bottom:8px;margin-bottom:4px;border-bottom:1px solid #e5e7eb;border-radius:8px 8px 0 0}.panel-item[title=Other]{margin-top:4px;border-top:1px solid #e5e7eb;border-radius:0 0 8px 8px;padding-top:8px}.panel-item[title=Other] .panel-icon-label{font-size:14px;width:24px}.desktop-protocol{padding:0 60px;max-width:1400px;width:100%;box-sizing:border-box}.desktop-protocol .protocol-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.desktop-protocol .protocol-header h2{font-size:26px;font-weight:600;margin:0;color:#1f2937}.desktop-protocol .protocol-controls{display:flex;align-items:center;gap:16px;padding:12px 16px;background-color:#f8f8f8;border-radius:12px;margin-bottom:20px}.protocol-entries{display:flex;flex-direction:column;gap:20px}.protocol-entries-list,.desktop-protocol .protocol-rows,.mobile-protocol .protocol-rows{display:flex;flex-direction:column;gap:2px}.protocol-row{background-color:#fff;border-radius:12px;padding:20px 24px;box-shadow:#959da514 0 2px 8px;transition:box-shadow .15s ease,transform .15s ease}.protocol-row:hover{box-shadow:#959da52e 0 4px 16px}.protocol-row.highlighted{box-shadow:0 0 0 2px #3b82f680,#3b82f626 0 4px 12px;background-color:#3b82f608}.protocol-row.drag-over{box-shadow:0 -2px #2563eb}.protocol-row[draggable=true]{cursor:grab}.protocol-row[draggable=true]:active{cursor:grabbing}.protocol-row-info{display:flex;align-items:center;gap:16px}.protocol-row-drag-handle{color:#ccc;flex-shrink:0;display:flex;align-items:center;cursor:grab}.protocol-row-drag-handle:active{cursor:grabbing}.protocol-row-rank{width:32px;height:32px;background-color:#636363;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:600;flex-shrink:0}.protocol-row-details{flex:1;min-width:0}.protocol-row-name{font-size:16px;font-weight:600;color:#1a1a1a;letter-spacing:.3px}.protocol-row-dose{font-size:13px;color:#666;margin-top:3px;display:flex;align-items:center;flex-wrap:wrap}.protocol-row-sep{margin:0 6px;color:#ccc}.protocol-row-timing{color:#888}.protocol-row-dose-range{font-size:11px;color:#2563eb;margin-top:2px}.protocol-row-weight{display:flex;align-items:center;gap:8px;flex-shrink:0}.protocol-row-weight-bar{width:60px;height:6px;background-color:#e5e5e5;border-radius:3px;overflow:hidden}.protocol-row-weight-fill{height:100%;background-color:#22c55e;border-radius:3px;transition:width .3s ease}.protocol-row-weight-label{font-size:12px;color:#888;min-width:32px;text-align:right}.protocol-row-weight-manual{font-size:12px;color:#9ca3af;font-style:italic}.protocol-row-contraindication{font-size:12px;color:#dc2626;margin-top:2px}.protocol-row-remove{width:32px;height:32px;border-radius:8px;border:1px solid #e5e7eb;background:none;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#9ca3af;flex-shrink:0;transition:all .15s ease}.protocol-row-remove:hover{background:#fef2f2;color:#ef4444;border-color:#fca5a5}.protocol-add-row{position:relative;border:1px dashed #d1d5db;border-radius:12px;background:#fafafa;padding:10px 14px;margin-top:4px;transition:border-color .15s,background .15s}.protocol-add-row.expanded{border-style:solid;border-color:#d1d5db;background:#fff;padding:12px 14px}.protocol-add-header{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:14px;color:#6b7280;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;outline:none}.protocol-add-header:hover{color:#374151}.protocol-add-icon{font-size:18px;font-weight:300;line-height:1}.protocol-add-collapse{margin-left:auto;color:#9ca3af;flex-shrink:0}.protocol-add-expanded{display:flex;flex-direction:column;gap:8px;margin-top:10px}.protocol-add-name-wrapper{position:relative}.protocol-add-name-wrapper input{width:100%;border:1px solid #e5e7eb;border-radius:8px;background:#fafafa;font-size:14px;color:#374151;outline:none;padding:7px 10px;box-sizing:border-box}.protocol-add-name-wrapper input:focus{border-color:#93c5fd;background:#fff}.protocol-add-name-wrapper input::placeholder{color:#9ca3af}.protocol-add-categories{position:relative}.protocol-add-category-input-wrapper{display:flex;flex-wrap:wrap;align-items:center;gap:5px;padding:5px 10px;border:1px solid #e5e7eb;border-radius:8px;background:#fafafa;min-height:34px;cursor:text;box-sizing:border-box}.protocol-add-category-input-wrapper:focus-within{border-color:#93c5fd;background:#fff}.protocol-add-category-input-wrapper input{border:none;background:transparent;outline:none;font-size:13px;color:#374151;flex:1;min-width:80px;padding:2px 0}.protocol-add-category-input-wrapper input::placeholder{color:#9ca3af}.protocol-add-category-tag{display:inline-flex;align-items:center;gap:4px;font-size:12px;color:#1976d2;background:#e8f4fd;padding:2px 8px;border-radius:10px;white-space:nowrap;line-height:1.4}.protocol-add-category-tag button{background:none;border:none;cursor:pointer;color:#1976d2;font-size:14px;line-height:1;padding:0 2px}.protocol-add-category-tag button:hover{color:#dc2626}.protocol-add-no-matches{font-size:13px;color:#9ca3af;padding:4px 0}.protocol-add-warning{font-size:12px;color:#dc2626;margin-top:2px}.swipeable-row{position:relative;transition:transform .2s ease}.swipeable-row.dragging{z-index:10;opacity:.85}.swipeable-row.dragging .protocol-row{box-shadow:0 4px 20px #00000026;transform:scale(1.02)}.swipeable-row.drag-over{border-top:2px solid #3b82f6}.swipeable-delete-bg{position:absolute;top:0;right:0;bottom:0;left:0;background:#ef4444;display:flex;align-items:center;justify-content:flex-end;padding-right:24px;border-radius:12px}.swipeable-row-content{position:relative;z-index:1}.protocol-row-edit{width:32px;height:32px;border-radius:8px;border:1px solid #e5e7eb;background:none;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#9ca3af;flex-shrink:0;transition:all .15s ease}.protocol-row-edit:hover{background:#f3f4f6;color:#6b7280;border-color:#d1d5db}.protocol-row-edit.active{background:#1f2937;color:#fff;border-color:#1f2937}.protocol-row-edit-section{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:14px;padding-top:14px;border-top:1px solid #f0f0f0}.editor-field{display:flex;align-items:center;gap:4px;font-size:13px;color:#374151}.editor-field label{font-weight:500}.editor-field input[type=number]{width:52px;padding:3px 6px;border:1px solid #d1d5db;border-radius:4px;font-size:13px;text-align:center}.editor-field select{padding:3px 6px;border:1px solid #d1d5db;border-radius:4px;font-size:13px;background:#fff}.editor-field-sep{color:#9ca3af;font-size:13px}.editor-field-result{font-size:13px;color:#6b7280;margin-left:4px}.editor-timing-group{display:flex;gap:12px;margin-left:12px}.editor-timing-radio{display:flex;align-items:center;gap:4px;font-size:13px;color:#374151;cursor:pointer;white-space:nowrap}.editor-timing-radio input[type=radio]{margin:0;cursor:pointer}.protocol-row-dose-range-detail{font-size:12px;color:#2563eb;margin-top:8px;display:flex;align-items:center}.protocol-row-instructions{margin-top:10px}.protocol-row-instructions textarea{width:100%;padding:6px 10px;border:1px solid #d1d5db;border-radius:6px;font-size:13px;font-family:inherit;resize:vertical;box-sizing:border-box;color:#374151}.protocol-row-instructions textarea::placeholder{color:#9ca3af}.protocol-row-tiles{display:flex;gap:10px;margin-top:14px;padding-top:14px;border-top:1px solid #f0f0f0;overflow-x:auto}.protocol-row-tiles::-webkit-scrollbar{height:4px}.protocol-row-tiles::-webkit-scrollbar-track{background:transparent}.protocol-row-tiles::-webkit-scrollbar-thumb{background:#ddd;border-radius:2px}.protocol-row-tile{flex-shrink:0;width:180px;padding:12px 14px;background:#f8f8f8;border-radius:10px;cursor:pointer;border:2px solid transparent;transition:all .15s ease;position:relative;display:flex;flex-direction:column;gap:4px}.protocol-row-tile:hover{background:#f0f0f0;border-color:#d1d5db}.protocol-row-tile.selected{border-color:#1f2937;background:#fff}.protocol-row-tile .tile-name{font-size:13px;font-weight:600;line-height:1.3;color:#1a1a1a;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.protocol-row-tile .tile-dose{font-size:11px;color:#555}.protocol-row-tile .tile-timing{font-size:10px;color:#888}.protocol-row-tile .tile-cats{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}.protocol-row-tile .tile-cat-tag{font-size:10px;color:#1976d2;background:#e8f4fd;padding:1px 6px;border-radius:6px}.protocol-row-tile .tile-selected-badge{position:absolute;top:-6px;right:-6px;background:#22c55e;color:#fff;font-size:9px;padding:2px 6px;border-radius:8px;font-weight:500}.protocol-row-cats{display:flex;flex-wrap:wrap;gap:5px;margin-top:6px}.protocol-row-cat-tag{font-size:11px;color:#1976d2;background:#e8f4fd;padding:2px 8px;border-radius:10px}.protocol-entry-row{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;border:1px solid #e5e7eb;border-radius:8px;background:#fafafa}.protocol-entry-rank{font-weight:600;color:#6b7280;min-width:20px;font-size:14px;margin-top:1px}.protocol-entry-details{flex:1;display:flex;flex-direction:column;gap:2px}.protocol-entry-name{font-weight:500;font-size:14px}.protocol-entry-dose{font-size:13px;color:#6b7280}.protocol-entry-notes{font-size:12px;color:#9ca3af;font-style:italic;margin-top:2px}.protocol-entry-instructions{font-size:12px;color:#6b7280;margin-top:3px}.protocol-entry-instructions-input{width:100%;margin-top:3px;padding:4px 8px;border:1px solid #d1d5db;border-radius:4px;font-size:12px;font-family:inherit;resize:vertical;box-sizing:border-box;color:#374151}.protocol-entry-instructions-input::placeholder{color:#9ca3af}.protocol-notes-section{padding-top:16px;border-top:1px solid #e5e7eb}.protocol-notes-heading{font-size:14px;font-weight:600;color:#374151;margin:0 0 8px}.protocol-notes-textarea{width:100%;padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:13px;font-family:inherit;resize:vertical;box-sizing:border-box;color:#374151}.protocol-notes-textarea::placeholder{color:#9ca3af}.protocol-notes-text{font-size:13px;color:#374151;margin:0;line-height:1.5;white-space:pre-wrap}.protocol-notes-empty{font-size:13px;color:#9ca3af;margin:0;font-style:italic}.protocol-doctor-notes{margin-top:4px}.protocol-locked-banner{padding:8px 12px;background:#dbeafe;border:1px solid #93c5fd;border-radius:6px;color:#1e40af;font-size:13px;font-weight:500;margin-bottom:8px}.protocol-stale-notice{padding:8px 12px;background:#dbeafe;border:1px solid #93c5fd;border-radius:6px;color:#1e40af;font-size:13px;margin-bottom:8px}.regenerate-link{background:none;border:none;color:#1e40af;font-weight:600;text-decoration:underline;cursor:pointer;font-size:inherit;padding:0}.regenerate-link:disabled{opacity:.6;cursor:default}.protocol-header-actions{display:flex;align-items:center;gap:12px}.protocol-refresh-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:1px solid #d1d5db;border-radius:50%;background:transparent;color:#6b7280;cursor:pointer;transition:background-color .2s,border-color .2s,color .2s}.protocol-refresh-btn:hover:not(:disabled){background-color:#f0f4ff;border-color:#93c5fd;color:#2563eb}.protocol-refresh-btn:disabled{opacity:.5;cursor:not-allowed}@keyframes protocol-spin{to{transform:rotate(360deg)}}.protocol-refresh-spinner{animation:protocol-spin 1s linear infinite}.protocol-lock-toggle{display:flex;align-items:center;gap:6px;cursor:pointer;font-size:13px;color:#6b7280;-webkit-user-select:none;user-select:none}.protocol-lock-toggle input[type=checkbox]{margin:0}@media(max-width:1000px){.desktop-protocol{padding:0 5vw}}.homeTemp .content .visualizer .addRow{padding:12px 23px;border-radius:12px;border:none;font-size:13px;font-weight:500;letter-spacing:.3px;font-family:Funnel Sans;background-color:#333;color:#fff}.homeTemp .content .visualizer .addRow:focus,.homeTemp .content .visualizer .addRow:focus-visible{outline:2px solid #007bff;outline-offset:2px;background-color:#474747}input[type=number]::-webkit-outer-spin-button,input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.tempChartEntry{display:flex}.homeTemp .newTestForm{display:flex;flex-direction:column;gap:10px;align-items:flex-start}.homeTemp .newTestHeader{display:flex;flex-direction:column;width:100%;gap:20px;border-bottom:1px solid rgba(0,0,0,.3);padding-bottom:20px}.homeTemp .newTestHeader .newTestFunctions{display:flex;align-items:center;justify-content:flex-end;gap:10px}.homeTemp .newTestHeader .newTestFunctions .upload{height:100%;background-color:#3a3ae7;color:#fff;border:none;outline:none;padding:9px 23px;font-family:Funnel Sans;font-weight:500;border-radius:20px;font-size:14px}.homeTemp .newTestHeader .newTestFunctions .cancel{background-color:transparent;border:none;outline:none;font-family:Funnel Sans;font-weight:450;padding:10px 20px;border-radius:20px}.homeTemp .newTestHeader .newTestFunctions .cancel:hover{background-color:#f0f0f0}.homeTemp .newTestHeader .headerTitle{font-size:18px;font-weight:500;letter-spacing:.3px;color:#000c}.homeTemp .newTestHeader .patientInfo,.homeTemp .newTestHeader .testInfo{display:flex;width:100%;min-height:45px;gap:10px;align-items:center;box-sizing:border-box;padding-left:5px;flex-wrap:wrap}.homeTemp .newTestHeader input,.homeTemp .newTestHeader .inputContainer select{border:1px solid rgba(0,0,0,.5);border-radius:10px;box-sizing:border-box;padding:10px;font-size:15px;font-family:Funnel Sans;letter-spacing:.3px;outline:none;height:100%;width:180px;background-color:transparent}.homeTemp .newTestHeader .error input,.homeTemp .newTestHeader .error select{border:1px solid rgba(255,0,0,.6)}.homeTemp .content .newTestHeader .error p{color:#f009}.homeTemp .newTestHeader .inputContainer select{width:100px}.homeTemp .newTestHeader .inputContainer{background-color:#f8f8f8;height:45px}.homeTemp .visualizer .testDisplay .testChartEntry.temp{background-color:#ebebeb;box-sizing:border-box;padding:0;gap:0;flex-direction:column;position:relative;overflow:visible}.homeTemp .visualizer .testDisplay .testChartEntry.temp:focus-within{z-index:10}.homeTemp .visualizer .temp .info{display:flex;flex-direction:row;gap:18px;align-items:center;width:100%;padding:15px 20px;box-sizing:border-box}.homeTemp .visualizer .temp .info_detailed{display:flex;gap:10px;background-color:inherit;flex-direction:column;width:100%;overflow:hidden;max-height:0;box-sizing:border-box;padding:0;border-radius:0 0 25px 25px}.homeTemp .visualizer .temp .info_detailed.expanded{padding:10px 20px 20px;max-height:600px}.homeTemp .visualizer .temp .drag{width:19px;height:19px;cursor:grab;touch-action:none;flex-shrink:0}.homeTemp .visualizer .temp .drag img{height:100%;width:100%}.homeTemp .visualizer .dragging{z-index:99;background-color:#eee;box-shadow:#00000026 1.95px 1.95px 2.6px}.homeTemp .visualizer .dropIndicator{display:none}.homeTemp .visualizer .activeDrop .dropIndicator{display:initial;position:absolute;background-color:#333;width:100%;height:7px;left:0;border-radius:25px;z-index:99}@media(max-width:1000px){.homeTemp .content .contentBody .visualizer{padding:0 5vw 35px}.homeTemp .visualizer .tabs{overflow-x:scroll;overflow-y:visible;flex-wrap:nowrap;padding-bottom:10px}.homeTemp .visualizer .tabs .tabEntry{flex-shrink:0}.homeTemp .visualizer .testChartEntry{height:auto;flex-direction:column;padding:20px}.homeTemp .visualizer .testChartEntry.detailed{flex-direction:row}.homeTemp .visualizer .testDisplay{padding:20px}.homeTemp .visualizer .testChartEntry .topWrapper{gap:10px}.homeTemp .visualizer .testChartEntry .bottomWrapper,.homeTemp .visualizer .testChartEntry .plot{width:100%}}@media(max-width:768px){.homeTemp .visualizer .testChartEntry.temp .chevron{height:18px;margin-left:auto}}.homeTemp.mobile{display:flex;flex-direction:column;height:100dvh;position:relative;overscroll-behavior-x:none}.homeTemp.mobile .content{min-height:calc(100dvh - 60px - env(safe-area-inset-bottom,0))}.homeTemp.mobile>.contentHeader{padding:0 16px;position:relative;flex-shrink:0}.mobile-content{padding:16px 0 20px}.mobile-dashboard{display:flex;flex-direction:column;gap:16px}.view-all-tests-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:14px 20px;background-color:#1f2937;color:#fff;border:none;border-radius:12px;font-family:Funnel Sans,sans-serif;font-size:15px;font-weight:500;cursor:pointer;transition:background-color .15s ease;-webkit-tap-highlight-color:transparent}.view-all-tests-btn:hover{background-color:#374151}.view-all-tests-btn:active{transform:scale(.98)}.mobile-protocol{display:flex;flex-direction:column;gap:16px;padding:0 16px}.protocol-header{display:flex;align-items:center;justify-content:space-between}.protocol-header h2{font-size:22px;font-weight:600;margin:0;color:#1f2937}.protocol-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:16px;padding:40px 20px;background-color:#f8f8f8;border-radius:12px;flex:1;min-height:300px}.protocol-empty p{color:#6b7280;font-size:14px;line-height:1.5;margin:0}.analyze-btn{padding:14px 32px;background-color:#1f2937;color:#fff;border:none;border-radius:24px;font-family:Funnel Sans,sans-serif;font-size:15px;font-weight:500;cursor:pointer;transition:background-color .15s ease;-webkit-tap-highlight-color:transparent}.analyze-btn:hover:not(:disabled){background-color:#374151}.analyze-btn:disabled{background-color:#9ca3af;cursor:not-allowed}.protocol-controls{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;padding:12px 16px;background-color:#f8f8f8;border-radius:12px}.get-defaults-btn{padding:8px 16px;background-color:#22c55e;color:#fff;border:none;border-radius:20px;font-family:Funnel Sans,sans-serif;font-size:13px;font-weight:500;cursor:pointer;white-space:nowrap;transition:background-color .15s ease;-webkit-tap-highlight-color:transparent}.get-defaults-btn:hover{background-color:#16a34a}.protocol-list{display:flex;flex-direction:column;gap:12px}.no-recs-message{color:#6b7280;text-align:center;padding:20px;margin:0}.tests-pill{position:fixed;bottom:calc(80px + env(safe-area-inset-bottom,0));left:20px;z-index:1001;display:flex;align-items:center;gap:6px;padding:10px 16px 10px 14px;background:#ffffffd9;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(0,0,0,.08);border-radius:24px;box-shadow:0 2px 8px #00000014,0 4px 20px #0000000a;font-family:Funnel Sans,sans-serif;font-size:13px;font-weight:500;color:#374151;cursor:pointer;-webkit-tap-highlight-color:transparent;animation:pill-enter .4s cubic-bezier(.34,1.56,.64,1);transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.tests-pill:hover{background:#fffffff2;box-shadow:0 4px 12px #0000001a,0 8px 24px #0000000f;transform:translateY(-1px)}.tests-pill:active{transform:scale(.96);background:#f5f5f5f2}.tests-pill svg{color:#6b7280;transition:color .2s ease}.tests-pill:hover svg{color:#374151}.tests-pill span{letter-spacing:.2px}@keyframes pill-enter{0%{opacity:0;transform:translateY(12px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}.mobile-home-viewport{flex:1;overflow:hidden;position:relative;width:100%;min-height:0;padding-bottom:calc(60px + env(safe-area-inset-bottom,0));touch-action:pan-y;overscroll-behavior-x:none}.tab-slider{display:flex;width:200%;height:100%;will-change:transform}.tab-panel{width:50%;height:100%;overflow-x:hidden;overscroll-behavior-x:none}.panel-left{overflow:hidden}.panel-protocol{overflow-y:auto}.vertical-pages{display:flex;flex-direction:column;height:200%;transition:transform .35s cubic-bezier(.4,0,.2,1)}.vertical-pages.show-tests{transform:translateY(-50%)}.vpage-dashboard{height:50%;overflow-y:auto}.vpage-tests{height:50%;background-color:#f9fafb;overflow:hidden;position:relative}.page-tests-scroll{height:100%;overflow-y:auto}.btn-icon{padding:0;width:40px;height:40px;min-width:40px;min-height:40px;border-radius:50%;background-color:transparent;border:1px solid #ccc;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background-color .2s ease,border-color .2s ease}.btn-icon:hover:not(:disabled){background-color:#f0f0f0;border-color:#999}.btn-icon:disabled{opacity:.6;cursor:not-allowed}.btn-pill{padding:0 21px;height:40px;display:flex;align-items:center;background-color:#e5e7eb;border:none;border-radius:20px;letter-spacing:.5px;font-weight:450;font-size:14px;font-family:Funnel Sans,sans-serif;cursor:pointer;transition:background-color .15s ease,color .15s ease;outline:none}.btn-pill:hover:not(:disabled):not(.selected){background-color:#d1d5db}.btn-pill:focus,.btn-pill:focus-visible{outline:none}.btn-pill:disabled{opacity:.5;cursor:not-allowed}.exportButton{padding:10px 20px;background-color:#2563eb;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s,opacity .2s}.exportButton:hover:not(:disabled){background-color:#1d4ed8}.exportButton:disabled{cursor:not-allowed;opacity:.7}.exportButton.generating{background-color:#6b7280}.exportButton.icon-variant{padding:0;background-color:transparent;border:1px solid #ccc;border-radius:50%;color:#333;font-size:18px}.exportButton.icon-variant.generating{background-color:#f0f0f0}.exportButton.header-variant{padding:0 21px;height:40px;background-color:#e5e7eb;color:#4b5563;border-radius:20px}.exportButton.header-variant:hover:not(:disabled){background-color:#d1d5db;color:#374151}.exportButton.header-variant.generating{background-color:#d1d5db;color:#6b7280}.share-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:9000}.share-modal{background:#fff;border-radius:16px;width:440px;max-height:85vh;overflow-y:auto;box-shadow:0 8px 40px #00000026;font-family:Funnel Sans,Inter,system-ui,sans-serif}.share-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 0}.share-modal-header h2{font-size:18px;font-weight:600;margin:0;color:#111}.share-modal-close{background:none;border:none;font-size:22px;cursor:pointer;color:#666;padding:4px;line-height:1}.share-files-section{padding:16px 24px}.share-files-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.share-files-label{font-size:13px;font-weight:600;color:#555;text-transform:uppercase;letter-spacing:.5px}.share-toggle-all{font-size:12px;color:#2563eb;background:none;border:none;cursor:pointer;font-weight:500}.share-files-list{max-height:160px;overflow-y:auto;border:1px solid #e5e7eb;border-radius:8px;padding:4px 0}.share-file-row{display:flex;align-items:center;gap:10px;padding:8px 12px;cursor:pointer;font-size:14px;color:#333}.share-file-row:hover{background:#f9fafb}.share-file-row input[type=checkbox]{accent-color:#2563eb;width:16px;height:16px}.share-file-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.share-scope-badge{margin-top:8px;font-size:12px;color:#888}.share-duration-section{padding:0 24px 16px}.share-duration-label{font-size:13px;font-weight:600;color:#555;text-transform:uppercase;letter-spacing:.5px;display:block;margin-bottom:8px}.share-duration-options{display:flex;gap:6px}.share-duration-btn{flex:1;padding:8px 4px;border:1px solid #d1d5db;border-radius:8px;background:#fff;font-size:13px;cursor:pointer;color:#333;transition:all .15s}.share-duration-btn.active{border-color:#2563eb;background:#eff6ff;color:#2563eb;font-weight:600}.share-recipient-section{padding:0 24px 20px}.share-email-row{display:flex;gap:8px}.share-email-input{flex:1;padding:10px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;outline:none}.share-email-input:focus{border-color:#2563eb}.share-add-btn{padding:10px 20px;background:#111;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;white-space:nowrap}.share-add-btn:disabled{opacity:.5;cursor:not-allowed}.share-divider{text-align:center;margin:14px 0;position:relative;color:#aaa;font-size:13px}.share-divider:before,.share-divider:after{content:"";position:absolute;top:50%;width:calc(50% - 16px);height:1px;background:#e5e7eb}.share-divider:before{left:0}.share-divider:after{right:0}.share-link-btn{width:100%;padding:10px;border:1px solid #d1d5db;border-radius:8px;background:#f9fafb;font-size:14px;cursor:pointer;color:#333;font-weight:500}.share-link-btn:disabled{opacity:.5;cursor:not-allowed}.share-link-result{display:flex;flex-wrap:wrap;gap:8px}.share-link-input{flex:1;padding:10px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:13px;background:#f9fafb;min-width:0}.share-copy-btn{padding:10px 16px;background:#2563eb;color:#fff;border:none;border-radius:8px;font-size:14px;cursor:pointer;font-weight:500}.share-link-note{width:100%;font-size:12px;color:#888;margin:4px 0 0}.share-error{padding:0 24px 16px;color:#dc2626;font-size:13px}@media(max-width:480px){.share-modal{width:calc(100% - 32px);max-height:90vh}}.password-input-wrapper{position:relative}.password-input-wrapper input{padding-right:40px}.password-toggle{position:absolute;right:8px;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;padding:4px;color:#9ca3af;display:flex;align-items:center;justify-content:center;border-radius:4px}.password-toggle:hover{color:#111827}.login-page{width:100%;height:100vh;position:fixed;overflow:hidden}.login-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1;display:flex;justify-content:center;padding:40px 20px;overflow:hidden}.login-modal{background:#fffc;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);max-width:480px;width:100%;border-radius:16px;padding:40px;box-shadow:0 8px 32px #0003;margin:auto 0;max-height:100%;overflow-y:auto;overscroll-behavior:none;scrollbar-width:none}.login-modal::-webkit-scrollbar{display:none}.login-modal h1{font-size:24px;font-weight:600;color:#111827;margin:0 0 8px;text-align:center}.login-subtitle{color:#6b7280;font-size:14px;text-align:center;margin:0 0 28px;line-height:1.5}.login-error{background-color:#fef2f2;border-left:3px solid #ef4444;color:#991b1b;padding:12px 16px;border-radius:6px;font-size:14px;margin-bottom:20px;line-height:1.5}.login-form .form-group{margin-bottom:20px}.login-form label{display:block;font-size:14px;font-weight:500;color:#111827;margin-bottom:6px}.login-form input{width:100%;padding:10px 12px;border:2px solid #e5e7eb;border-radius:8px;font-size:14px;color:#111827;box-sizing:border-box;transition:border-color .2s;background:#ffffffb3}.login-form input:focus{outline:none;border-color:#111827}.login-form .password-requirements{margin-top:8px;padding:10px 12px;background-color:#f9fafbcc;border-radius:6px}.login-form .password-requirements p{font-size:12px;color:#6b7280;margin:0 0 6px;font-weight:500}.login-form .password-requirements ul{list-style:none;padding:0;margin:0}.login-form .password-requirements li{font-size:12px;color:#9ca3af;padding:2px 0}.login-form .password-requirements li.met{color:#16a34a}.login-submit{width:100%;padding:12px;font-size:15px;font-weight:600;border-radius:8px;border:none;background-color:#111827;color:#fff;cursor:pointer;transition:opacity .2s;margin-top:8px;min-height:44px;display:flex;align-items:center;justify-content:center}.login-submit:hover:not(:disabled){opacity:.9}.login-submit:disabled{background-color:#d1d5db;cursor:not-allowed}.login-forgot-link{text-align:right;margin:-12px 0 8px}.login-forgot-link a{font-size:13px;color:#6b7280;text-decoration:none;cursor:pointer}.login-forgot-link a:hover{color:#111827;text-decoration:underline}.login-back-btn{display:flex;align-items:center;gap:6px;background:none;border:none;color:#6b7280;font-size:13px;cursor:pointer;padding:0;margin-bottom:16px}.login-back-btn:hover{color:#111827}.login-forgot-confirmation{text-align:center;font-size:13px;color:#16a34a;margin:0}.login-divider{border:none;border-top:1px solid #e5e7eb;margin:24px 0}.login-signup-link{text-align:center;font-size:14px;color:#6b7280}.login-signup-link a{color:#111827;font-weight:600;text-decoration:none;cursor:pointer}.login-signup-link a:hover{text-decoration:underline}.login-testimonials-ticker{margin-top:28px;overflow:hidden;mask-image:linear-gradient(to right,transparent,black 5%,black 95%,transparent);-webkit-mask-image:linear-gradient(to right,transparent,black 5%,black 95%,transparent)}.login-testimonials-ticker .ticker-track{display:flex;gap:16px;animation:loginTickerScroll 35s linear infinite;width:max-content}.login-testimonials-ticker .ticker-card{flex-shrink:0;width:220px;padding:16px;background:#f9f9f9b3;border-radius:12px;display:flex;flex-direction:column;gap:8px}.login-testimonials-ticker .ticker-card p{font-size:13px;line-height:1.5;color:#282828;font-weight:450;margin:0}.login-testimonials-ticker .ticker-card span{font-size:11px;color:#787878;font-weight:500}@keyframes loginTickerScroll{0%{transform:translate(0)}to{transform:translate(-50%)}}@media(max-width:640px){.login-overlay{padding:20px 16px}.login-modal{padding:24px 20px}.login-modal h1{font-size:20px}.login-subtitle{font-size:13px}.login-testimonials-ticker .ticker-card{width:180px;padding:12px}.login-testimonials-ticker .ticker-card p{font-size:12px}}.signup-page{width:100%;height:100vh;position:fixed;overflow:hidden}.signup-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1;display:flex;justify-content:center;padding:40px 20px;overflow:hidden}.signup-modal{background:#fffc;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);max-width:480px;width:100%;border-radius:16px;padding:40px;box-shadow:0 8px 32px #0003;margin:auto 0;max-height:100%;overflow-y:auto;overscroll-behavior:none;scrollbar-width:none}.signup-modal::-webkit-scrollbar{display:none}.signup-modal h1{font-size:24px;font-weight:600;color:#111827;margin:0 0 8px;text-align:center}.signup-subtitle{color:#6b7280;font-size:14px;text-align:center;margin:0 0 28px;line-height:1.5}.signup-error{background-color:#fef2f2;border-left:3px solid #ef4444;color:#991b1b;padding:12px 16px;border-radius:6px;font-size:14px;margin-bottom:20px;line-height:1.5}.signup-form .form-group{margin-bottom:20px}.signup-form label{display:block;font-size:14px;font-weight:500;color:#111827;margin-bottom:6px}.signup-form input{width:100%;padding:10px 12px;border:2px solid #e5e7eb;border-radius:8px;font-size:14px;color:#111827;box-sizing:border-box;transition:border-color .2s;background:#ffffffb3}.signup-form input:focus{outline:none;border-color:#111827}.signup-form .password-requirements{margin-top:8px;padding:10px 12px;background-color:#f9fafbcc;border-radius:6px}.signup-form .password-requirements p{font-size:12px;color:#6b7280;margin:0 0 6px;font-weight:500}.signup-form .password-requirements ul{list-style:none;padding:0;margin:0}.signup-form .password-requirements li{font-size:12px;color:#9ca3af;padding:2px 0}.signup-form .password-requirements li.met{color:#16a34a}.signup-submit{width:100%;padding:12px;font-size:15px;font-weight:600;border-radius:8px;border:none;background-color:#111827;color:#fff;cursor:pointer;transition:opacity .2s;margin-top:8px;min-height:44px;display:flex;align-items:center;justify-content:center}.signup-submit:hover:not(:disabled){opacity:.9}.signup-submit:disabled{background-color:#d1d5db;cursor:not-allowed}.signup-divider{border:none;border-top:1px solid #e5e7eb;margin:24px 0}.signup-login-link{text-align:center;font-size:14px;color:#6b7280}.signup-login-link a{color:#111827;font-weight:600;text-decoration:none;cursor:pointer}.signup-login-link a:hover{text-decoration:underline}.signup-testimonials-ticker{margin-top:28px;overflow:hidden;mask-image:linear-gradient(to right,transparent,black 5%,black 95%,transparent);-webkit-mask-image:linear-gradient(to right,transparent,black 5%,black 95%,transparent)}.signup-testimonials-ticker .ticker-track{display:flex;gap:16px;animation:signupTickerScroll 35s linear infinite;width:max-content}.signup-testimonials-ticker .ticker-card{flex-shrink:0;width:220px;padding:16px;background:#f9f9f9b3;border-radius:12px;display:flex;flex-direction:column;gap:8px}.signup-testimonials-ticker .ticker-card p{font-size:13px;line-height:1.5;color:#282828;font-weight:450;margin:0}.signup-testimonials-ticker .ticker-card span{font-size:11px;color:#787878;font-weight:500}@keyframes signupTickerScroll{0%{transform:translate(0)}to{transform:translate(-50%)}}@media(max-width:640px){.signup-overlay{padding:20px 16px}.signup-modal{padding:24px 20px}.signup-modal h1{font-size:20px}.signup-subtitle{font-size:13px}.signup-testimonials-ticker .ticker-card{width:180px;padding:12px}.signup-testimonials-ticker .ticker-card p{font-size:12px}}.verify-page{width:100%;height:100vh;position:fixed;overflow:hidden}.verify-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1;display:flex;justify-content:center;padding:40px 20px;overflow:hidden}.verify-modal{background:#fffc;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);max-width:480px;width:100%;border-radius:16px;padding:40px;box-shadow:0 8px 32px #0003;margin:auto 0;max-height:100%;overflow-y:auto;overscroll-behavior:none;scrollbar-width:none}.verify-modal::-webkit-scrollbar{display:none}.verify-modal h1{font-size:24px;font-weight:600;color:#111827;margin:0 0 8px;text-align:center}.verify-subtitle{color:#6b7280;font-size:14px;text-align:center;margin:0 0 28px;line-height:1.5}.verify-error{background-color:#fef2f2;border-left:3px solid #ef4444;color:#991b1b;padding:12px 16px;border-radius:6px;font-size:14px;margin-bottom:20px;line-height:1.5}.verify-success{background-color:#f0fdf4;border-left:3px solid #16a34a;color:#166534;padding:12px 16px;border-radius:6px;font-size:14px;margin-bottom:20px;line-height:1.5}.verify-form .form-group{margin-bottom:20px}.verify-form label{display:block;font-size:14px;font-weight:500;color:#111827;margin-bottom:6px}.verify-form input{width:100%;padding:10px 12px;border:2px solid #e5e7eb;border-radius:8px;font-size:14px;color:#111827;box-sizing:border-box;transition:border-color .2s;background:#ffffffb3;letter-spacing:.15em;text-align:center}.verify-form input:focus{outline:none;border-color:#111827}.verify-submit{width:100%;padding:12px;font-size:15px;font-weight:600;border-radius:8px;border:none;background-color:#111827;color:#fff;cursor:pointer;transition:opacity .2s;margin-top:8px;min-height:44px;display:flex;align-items:center;justify-content:center}.verify-submit:hover:not(:disabled){opacity:.9}.verify-submit:disabled{background-color:#d1d5db;cursor:not-allowed}.verify-resend{width:100%;padding:12px;font-size:14px;font-weight:500;border-radius:8px;border:2px solid #e5e7eb;background:transparent;color:#111827;cursor:pointer;transition:border-color .2s,background-color .2s;margin-top:12px;min-height:44px;display:flex;align-items:center;justify-content:center}.verify-resend:hover:not(:disabled){background-color:#00000008;border-color:#111827}.verify-resend:disabled{color:#9ca3af;cursor:not-allowed}.verify-divider{border:none;border-top:1px solid #e5e7eb;margin:24px 0}.verify-back-link{text-align:center;font-size:14px;color:#6b7280}.verify-back-link a{color:#111827;font-weight:600;text-decoration:none;cursor:pointer}.verify-back-link a:hover{text-decoration:underline}@media(max-width:640px){.verify-overlay{padding:20px 16px}.verify-modal{padding:24px 20px}.verify-modal h1{font-size:20px}.verify-subtitle{font-size:13px}}.profileContainer{display:flex;flex-direction:column;width:100%;min-height:100vh}.profileContainer .contentHeader{position:fixed;top:0;width:100%;height:60px;background-color:#fff;border-bottom:1px solid rgba(0,0,0,.2);display:flex;justify-content:flex-end;align-items:center;padding:0 30px;z-index:100}.profile{display:flex;justify-content:center;align-items:center;flex-direction:column;gap:20px;width:350px;max-width:100%;font-family:Funnel Sans;margin:0 auto;padding:80px 16px 0;box-sizing:border-box}.input-group{width:100%;display:flex;flex-direction:column}.input-group label{margin-bottom:5px;font-size:14px}.input-group input,.input-group select{width:100%;height:40px;border-radius:10px;outline:none;border:1px solid black;box-sizing:border-box;padding:0 10px}.inline-fields{display:flex;justify-content:space-between;width:100%;gap:10px}.inline-fields .input-group{width:48%}.checkbox-field{display:flex;justify-content:flex-end;align-items:center;width:100%;gap:10px}.profile button{width:100%;height:40px;border-radius:10px;border:none;background-color:#e6e6e6}.submit-error{color:red;font-size:14px;text-align:left;width:100%}.input-error{border:1px solid red!important}.first_feature{display:flex;min-height:100vh;background-color:#fafafa;justify-content:center;align-items:center}.first_feature>h2{font-size:50px;letter-spacing:-2%;font-weight:500}.diagnostic-results{margin-top:30px}.results-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:20px;border-radius:10px;margin-bottom:20px}.results-header h2{margin:0 0 15px;font-size:1.8rem}.lab-statistics{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:15px}.stat-item{display:flex;justify-content:space-between;align-items:center;background:#ffffff1a;padding:10px 15px;border-radius:6px}.stat-label{font-weight:500}.stat-value{font-weight:700;font-size:1.2rem}.collapsible-section{margin-bottom:20px;border:1px solid #ddd;border-radius:8px;overflow:hidden}.section-header{background-color:#f8f9fa;padding:15px 20px;cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:background-color .2s ease}.section-header:hover{background-color:#e9ecef}.section-header h3{margin:0;font-size:1.2rem;color:#2c3e50}.collapse-indicator{font-size:1.2rem;color:#666;transition:transform .2s ease}.section-header.open .collapse-indicator{transform:rotate(0)}.section-header.closed .collapse-indicator{transform:rotate(-90deg)}.section-content{padding:20px;background-color:#fff}.high-significance .section-header{background-color:#ffe6e6;border-left:4px solid #e74c3c}.moderate-significance .section-header{background-color:#fff2e6;border-left:4px solid #f39c12}.low-significance .section-header{background-color:#e6f3ff;border-left:4px solid #3498db}.contributing-tests .section-header{background-color:#e8f5e8;border-left:4px solid #27ae60}.non-contributing-tests .section-header{background-color:#f0f0f0;border-left:4px solid #7f8c8d}.diagnosis-finding{margin-bottom:15px}.diagnosis-section .section-header{background-color:#fff;border:1px solid #ddd;border-radius:6px;margin-bottom:5px}.diagnosis-section .section-content{padding:10px 0 0;background-color:transparent}.diagnosis-header-content{display:flex;align-items:center;width:100%;gap:15px}.diagnosis-name{flex:1;font-weight:600;color:#2c3e50;font-size:1.1rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.test-section{margin-bottom:10px;margin-left:20px}.test-section .section-header{background-color:#f8f9fa;border:1px solid #e9ecef;border-radius:4px;padding:10px 15px}.test-section .section-content{padding:15px;background-color:#fff;border:1px solid #e9ecef;border-top:none;border-radius:0 0 4px 4px}.test-header-content{display:flex;align-items:center;width:100%;gap:15px}.test-header-content .test-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.test-info{display:flex;align-items:center;gap:15px;flex-shrink:0}.contribution{color:#666;font-size:.9rem;font-style:italic}.missing-test{display:flex;justify-content:space-between;align-items:center;padding:10px 15px;margin:5px 0 5px 20px;background-color:#f8f9fa;border:1px solid #e9ecef;border-radius:4px;color:#6c757d}.missing-note{font-style:italic;color:#adb5bd}.nested-boxplot{margin:0;border:none;background-color:transparent;padding:0}.custom-title{flex:1;margin:0}.weight-badge{padding:4px 8px;border-radius:4px;color:#fff;font-weight:600;font-size:.9rem}.weight-badge.high{background-color:#e74c3c}.weight-badge.moderate{background-color:#f39c12}.weight-badge.low{background-color:#3498db}.contributing-markers{margin-top:10px}.test-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:20px}.section-description{color:#666;font-style:italic;margin-bottom:15px}.test-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:10px}.non-contributing-item{display:flex;justify-content:space-between;align-items:center;padding:10px 15px;background-color:#f8f9fa;border-radius:4px;border:1px solid #e9ecef}.test-name{font-weight:600;color:#2c3e50}.test-value{font-weight:500;color:#e74c3c}.test-ref{color:#666;font-size:.9rem}.complete-results-table{overflow-x:auto}.complete-results-table table{width:100%;border-collapse:collapse;margin-top:10px}.complete-results-table th,.complete-results-table td{padding:12px;text-align:left;border-bottom:1px solid #ddd}.complete-results-table th{background-color:#f8f9fa;font-weight:600;color:#2c3e50}.complete-results-table tr:hover{background-color:#f8f9fa}.weight-cell{text-align:center}.test-boxplot{border:1px solid #ddd;border-radius:6px;padding:15px;background-color:#fff;margin-bottom:10px}.test-boxplot.abnormal{border-color:#e74c3c;background-color:#fdf2f2}.test-boxplot.suboptimal{border-color:#f39c12;background-color:#fef9f2}.test-boxplot.normal{border-color:#27ae60;background-color:#f2fdf5}.boxplot-header{margin-bottom:15px}.test-info{display:flex;justify-content:space-between;align-items:center}.test-name{font-weight:600;color:#2c3e50;font-size:1rem}.test-value{font-weight:500;color:#e74c3c;font-size:1rem}.contribution{color:#666;font-size:.9rem;margin-left:5px}.plot-area{position:relative;height:60px;background-color:#f8f9fa;border-radius:4px;margin-bottom:10px}.range-bar{position:absolute;height:20px;border-radius:3px;display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:500;color:#fff}.reference-range{top:5px;background-color:#95a5a6;opacity:.8}.functional-range{top:30px;background-color:#3498db;opacity:.8}.range-label{font-size:.7rem;font-weight:600}.result-marker{position:absolute;top:0;bottom:0;width:3px;z-index:10}.marker-line{width:100%;height:100%;background-color:#e74c3c;border-radius:1px}.marker-dot{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:8px;height:8px;background-color:#c0392b;border-radius:50%;border:2px solid white}.scale{position:absolute;bottom:5px;left:0;right:0;display:flex;justify-content:space-between;font-size:.7rem;color:#666;padding:0 5px}.boxplot-details{background-color:#f8f9fa;padding:10px;border-radius:4px;font-size:.9rem}.detail-row{display:flex;justify-content:space-between;margin-bottom:5px}.detail-row:last-child{margin-bottom:0}.status.normal{color:#27ae60;font-weight:600}.status.suboptimal{color:#f39c12;font-weight:600}.status.abnormal{color:#e74c3c;font-weight:600}.diagnostic-knots{position:absolute;top:0;bottom:0;left:0;right:0;pointer-events:none;z-index:5}.diagnostic-knot{position:absolute;top:0;bottom:0;width:2px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;pointer-events:auto}.knot-marker{width:100%;height:100%;background-color:#8e44ad;border-radius:1px;position:relative}.knot-marker.positive{background-color:#8e44ad}.knot-marker.negative{background-color:#9b59b6;opacity:.7}.knot-weight{position:absolute;top:-20px;left:50%;transform:translate(-50%);background-color:#8e44ad;color:#fff;font-size:.7rem;font-weight:600;padding:2px 4px;border-radius:3px;white-space:nowrap;z-index:10}.knot-marker.negative+.knot-weight{background-color:#9b59b6}@media(max-width:768px){.test-info{flex-direction:column;align-items:flex-start;gap:5px}.test-grid,.test-list{grid-template-columns:1fr}.non-contributing-item{flex-direction:column;align-items:flex-start;gap:5px}.lab-statistics{grid-template-columns:1fr}.knot-weight{font-size:.6rem;padding:1px 3px}}.test-analysis{max-width:1200px;margin:0 auto;padding:20px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.test-analysis-header{margin-bottom:30px;text-align:center}.test-analysis-header h1{color:#2c3e50;margin-bottom:10px;font-size:2.5rem}.test-analysis-header p{color:#666;font-size:1.1rem}.test-analysis-controls{display:flex;gap:20px;justify-content:center;margin-bottom:30px}.analyze-btn{padding:12px 24px;font-size:16px;font-weight:600;border:none;border-radius:8px;cursor:pointer;transition:all .2s ease;min-width:150px;background-color:#e74c3c;color:#fff}.analyze-btn:hover:not(:disabled){background-color:#c0392b;transform:translateY(-1px)}.analyze-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.error-message{background-color:#fee;border:1px solid #fcc;color:#c33;padding:15px;border-radius:8px;margin-bottom:20px;font-weight:500}.lab-file-selection{background-color:#f8f9fa;border:1px solid #dee2e6;border-radius:8px;padding:20px;margin-bottom:30px}.lab-file-selection h3{margin:0 0 15px;color:#2c3e50;font-size:1.2rem}.tabs{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:15px;align-items:center}.tabEntry{padding:8px 16px;background-color:#e9ecef;border:1px solid #ced4da;border-radius:4px;cursor:pointer;font-size:.9rem;font-weight:500;color:#495057;transition:all .2s ease;white-space:nowrap}.tabEntry:hover{background-color:#dee2e6;border-color:#adb5bd}.tabEntry.selected{background-color:#007bff;color:#fff;border-color:#0056b3}.selection-status{background-color:#e6f3ff;border:1px solid #b3d9ff;padding:10px 15px;border-radius:6px;margin-top:10px}.selection-status p{margin:0 0 5px;color:#0056b3;font-size:.9rem}.selection-status p:last-child{margin-bottom:0}@media(max-width:768px){.tabs{flex-direction:column;align-items:stretch}.tabEntry{text-align:center}}.manage-page{min-height:100vh;background-color:#f9fafb}.manage-content{padding-top:72px;height:calc(100vh + -0px);overflow:hidden}.manage-layout{display:flex;height:100%}.manage-sidebar{width:340px;min-width:340px;border-right:1px solid #e5e7eb;background:#fff;overflow-y:auto;padding:28px 20px;flex-shrink:0}.manage-sidebar h1{font-size:22px;font-weight:700;color:#111827;margin:0 0 4px}.manage-subtitle{color:#6b7280;font-size:13px;margin:0 0 24px}.manage-section{margin-bottom:24px}.manage-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.manage-section-header h2{font-size:13px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px;margin:0}.manage-add-btn{font-size:12px;font-weight:600;color:#2563eb;background:none;border:none;cursor:pointer;padding:2px 6px}.manage-add-btn:hover{text-decoration:underline}.manage-empty{font-size:13px;color:#9ca3af;padding:8px 0;margin:0}.manage-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:2px}.manage-list-item{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:10px;cursor:pointer;transition:background .15s}.manage-list-item:hover{background:#f3f4f6}.manage-list-item.active{background:#eff6ff}.manage-list-item.expired{opacity:.6}.manage-list-item-avatar{width:36px;height:36px;min-width:36px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;font-size:15px;font-weight:600;display:flex;align-items:center;justify-content:center}.manage-list-item-avatar.peer{background:linear-gradient(135deg,#06b6d4,#3b82f6)}.manage-list-item-avatar.faded{opacity:.5}.manage-list-item-info{flex:1;min-width:0;display:flex;flex-direction:column}.manage-list-item-name{font-size:14px;font-weight:600;color:#111827;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.manage-list-item-meta{font-size:12px;color:#9ca3af}.status-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.status-dot.status-active{background:#22c55e}.status-dot.status-expiring{background:#f59e0b}.status-dot.status-expired{background:#9ca3af}.manage-detail{flex:1;overflow-y:auto;padding:28px 32px}.manage-detail-back{background:none;border:none;font-size:15px;color:#6b7280;cursor:pointer;padding:0;margin-bottom:20px;display:none}.manage-detail-header{display:flex;align-items:center;gap:16px;margin-bottom:16px}.manage-detail-avatar{width:56px;height:56px;min-width:56px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;font-size:22px;font-weight:600;display:flex;align-items:center;justify-content:center}.manage-detail-avatar.peer{background:linear-gradient(135deg,#06b6d4,#3b82f6)}.manage-detail-header h2{font-size:20px;font-weight:700;color:#111827;margin:0}.manage-detail-badges{display:flex;gap:6px;margin-top:4px}.type-badge{padding:2px 8px;border-radius:10px;font-size:11px;font-weight:600;background:#f3f4f6;color:#6b7280}.manage-detail-meta{font-size:14px;color:#6b7280;margin:0 0 2px}.manage-detail-dates{display:flex;gap:20px;font-size:13px;color:#9ca3af;margin:12px 0 20px}.manage-detail-actions{display:flex;gap:8px;margin-bottom:24px}.manage-detail-scope{background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;padding:20px;margin-top:8px}.manage-detail-scope-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.manage-detail-scope-header h3{font-size:15px;font-weight:600;color:#111827;margin:0}.manage-detail-scope-value{font-size:14px;color:#6b7280;margin:0}.scope-editor{margin-top:8px}.scope-radio-group{display:flex;gap:16px;margin-bottom:12px}.scope-radio-group label{display:flex;align-items:center;gap:6px;font-size:14px;color:#333;cursor:pointer}.scope-file-list{max-height:200px;overflow-y:auto;border:1px solid #e5e7eb;border-radius:8px;padding:4px 0;background:#fff;margin-bottom:12px}.scope-file-row{display:flex;align-items:center;gap:10px;padding:8px 12px;font-size:13px;color:#333;cursor:pointer}.scope-file-row:hover{background:#f9fafb}.scope-file-row input[type=checkbox]{accent-color:#2563eb;width:16px;height:16px}.scope-editor-actions{display:flex;gap:8px;justify-content:flex-end}.scope-editor-actions .btn-primary,.scope-editor-actions .btn-secondary{padding:8px 16px;font-size:13px;min-height:36px}.manage-detail-renew{background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;padding:20px;margin-top:16px}.manage-detail-renew h3{font-size:15px;font-weight:600;margin:0 0 8px;color:#111827}.manage-detail-renew p{font-size:14px;color:#6b7280;margin:0 0 12px}.manage-page .share-duration-options{flex-wrap:wrap}.manage-page .share-duration-btn{min-width:60px;font-size:12px;text-align:center}.manage-page .share-link-btn{width:auto}.header-link{color:#4a4a4a;text-decoration:none;cursor:pointer;font-size:14px;font-weight:500;transition:color .15s ease}.header-link:hover{color:#111827}.loading-doctors{display:flex;flex-direction:column;align-items:center;padding:40px;gap:12px;color:#6b7280}.btn-primary,.btn-secondary,.btn-confirm{padding:12px 24px;font-size:15px;font-weight:600;border-radius:8px;border:none;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;justify-content:center;min-height:44px}.btn-primary{background-color:#111827;color:#fff}.btn-primary:hover:not(:disabled){background-color:#1f2937}.btn-primary:disabled{background-color:#d1d5db;cursor:not-allowed}.btn-secondary{background-color:transparent;color:#111827;border:2px solid #e5e7eb}.btn-secondary:hover:not(:disabled){background-color:#f9fafb}.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.btn-confirm{background-color:#22c55e;color:#fff}.btn-confirm:hover:not(:disabled){background-color:#16a34a}.btn-confirm:disabled{background-color:#d1d5db;cursor:not-allowed}.btn-extend{padding:6px 14px;font-size:13px;font-weight:600;border-radius:6px;border:2px solid #e5e7eb;background-color:#fff;color:#111827;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;justify-content:center;min-width:70px;height:32px}.btn-extend:hover:not(:disabled){background-color:#f9fafb;border-color:#d1d5db}.btn-extend:disabled{opacity:.5;cursor:not-allowed}.btn-revoke{padding:6px 14px;font-size:13px;font-weight:600;border-radius:6px;border:none;background-color:#ef4444;color:#fff;cursor:pointer;transition:background-color .2s;display:inline-flex;align-items:center;justify-content:center;min-width:70px;height:32px}.btn-revoke:hover:not(:disabled){background-color:#dc2626}.btn-revoke:disabled{background-color:#d1d5db;cursor:not-allowed}.status-badge{padding:4px 10px;border-radius:12px;font-size:12px;font-weight:600}.status-active{background-color:#dcfce7;color:#166534}.status-expiring{background-color:#fef3c7;color:#92400e}.status-expired{background-color:#f3f4f6;color:#6b7280}.error-message{background-color:#fef2f2;border-left:3px solid #ef4444;color:#991b1b;padding:12px 16px;border-radius:6px;font-size:14px;margin-top:16px}.input-method-tabs{display:flex;gap:8px;margin-bottom:20px;border-bottom:2px solid #e5e7eb}.input-method-tabs button{flex:1;padding:10px 16px;background:none;border:none;border-bottom:2px solid transparent;color:#6b7280;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;margin-bottom:-2px}.input-method-tabs button:hover{color:#111827}.input-method-tabs button.active{color:#111827;border-bottom-color:#111827}.input-section{margin-bottom:16px}.input-help{font-size:13px;color:#6b7280;margin:0 0 12px}.code-input-group{display:flex;gap:12px}.code-input{flex:1;padding:12px 16px;font-size:20px;letter-spacing:4px;text-align:center;border:2px solid #e5e7eb;border-radius:8px;font-family:monospace;font-weight:600;transition:border-color .2s}.code-input:focus{outline:none;border-color:#111827}.code-input::placeholder{color:#d1d5db;letter-spacing:4px}.qr-section{background-color:#f9fafb;border-radius:8px;padding:20px}.qr-instructions ol{margin:0;padding-left:20px;color:#374151}.qr-instructions li{margin-bottom:10px;font-size:14px;line-height:1.5}.doctor-confirm-section h3{font-size:16px;font-weight:600;color:#111827;margin:0 0 16px}.doctor-confirm-card{display:flex;justify-content:space-between;align-items:flex-start;background-color:#f9fafb;border:2px solid #e5e7eb;border-radius:12px;padding:20px;margin-bottom:20px}.doctor-confirm-info h4{font-size:20px;font-weight:600;color:#111827;margin:0 0 6px}.doctor-confirm-info .specialty{font-size:15px;color:#3b82f6;font-weight:500;margin:0 0 4px}.doctor-confirm-info .institution{font-size:14px;color:#6b7280;margin:0 0 6px}.doctor-confirm-info .npi{font-size:12px;color:#9ca3af;margin:0;font-family:monospace}.doctor-confirm-avatar .avatar-placeholder{width:60px;height:60px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;font-size:24px;font-weight:600;display:flex;align-items:center;justify-content:center}.access-options{margin-bottom:20px}.toggle-option{display:flex;align-items:center;gap:10px;cursor:pointer;font-size:14px;color:#111827}.toggle-option input[type=checkbox]{width:18px;height:18px;cursor:pointer}.toggle-label{font-weight:500}.access-hint{font-size:13px;color:#6b7280;margin:8px 0 0 28px}.action-buttons{display:flex;gap:12px}.action-buttons button{flex:1}.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:20px}.modal{background-color:#fff;border-radius:16px;padding:28px;max-width:400px;width:100%;box-shadow:0 20px 25px -5px #0000001a;animation:modalSlideIn .2s ease-out}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.modal h3{font-size:20px;font-weight:600;color:#111827;margin:0 0 12px}.modal p{font-size:15px;color:#4b5563;margin:0 0 20px;line-height:1.5}.modal-warning{color:#dc2626!important;font-size:14px!important;background-color:#fef2f2;padding:12px;border-radius:8px}.modal-options{display:flex;flex-direction:column;gap:10px;margin-bottom:16px}.btn-option{padding:14px 20px;font-size:15px;font-weight:600;border-radius:8px;border:2px solid #e5e7eb;background-color:#fff;color:#111827;cursor:pointer;transition:all .2s;text-align:center}.btn-option:hover{background-color:#f9fafb;border-color:#d1d5db}.btn-option.primary{background-color:#111827;color:#fff;border-color:#111827}.btn-option.primary:hover{background-color:#1f2937}.btn-cancel{width:100%;padding:12px;font-size:14px;font-weight:500;background:none;border:none;color:#6b7280;cursor:pointer;transition:color .2s}.btn-cancel:hover{color:#111827}.modal-actions{display:flex;gap:12px;margin-top:20px}.modal-actions button{flex:1}.btn-danger{padding:12px 20px;font-size:15px;font-weight:600;border-radius:8px;border:none;background-color:#ef4444;color:#fff;cursor:pointer;transition:background-color .2s}.btn-danger:hover{background-color:#dc2626}@media(max-width:768px){.manage-layout{flex-direction:column}.manage-sidebar{width:100%;min-width:0;border-right:none;border-bottom:1px solid #e5e7eb;box-sizing:border-box}.manage-sidebar.collapsed{display:none}.manage-detail{padding:20px 16px}.manage-detail-back{display:block}.manage-detail-dates{flex-direction:column;gap:4px}.code-input-group{flex-direction:column}.action-buttons{flex-direction:column-reverse}.action-buttons button{width:100%}.modal-actions{flex-direction:column-reverse}.modal-actions button{width:100%}}.cpm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:flex-start;justify-content:center;padding:5vh 0;overflow-y:auto;z-index:1000}.cpm-modal{background:#fff;border-radius:12px;width:90%;max-width:640px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 8px 32px #00000026;flex-shrink:0}.cpm-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #e5e7eb}.cpm-header h2{margin:0;font-size:18px;color:#111827}.cpm-close{background:none;border:none;font-size:24px;color:#6b7280;cursor:pointer;padding:0 4px;line-height:1}.cpm-close:hover{color:#111827}.cpm-tabs{display:flex;border-bottom:1px solid #e5e7eb;padding:0 20px}.cpm-tabs button{background:none;border:none;padding:10px 16px;font-size:14px;color:#6b7280;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px}.cpm-tabs button.active{color:#111827;border-bottom-color:#111827;font-weight:600}.cpm-tabs button:disabled{opacity:.5;cursor:not-allowed}.cpm-form{padding:20px;overflow-y:auto}.cpm-row{margin-bottom:14px}.cpm-row label{display:block;font-size:13px;font-weight:500;color:#374151;margin-bottom:4px}.cpm-row input{width:100%;height:38px;border:1px solid #d1d5db;border-radius:8px;padding:0 10px;font-size:14px;box-sizing:border-box}.cpm-row input:disabled{background:#f3f4f6;color:#6b7280}.cpm-row-pair{display:flex;gap:12px}.cpm-row-pair .cpm-row{flex:1}.cpm-error{background:#fef2f2;color:#b91c1c;border-left:3px solid #ef4444;padding:8px 12px;border-radius:4px;font-size:13px;margin-bottom:14px}.cpm-success{background:#f0fdf4;color:#15803d;border-left:3px solid #22c55e;padding:8px 12px;border-radius:4px;font-size:13px;margin-bottom:14px}.cpm-submit{width:100%;height:40px;background:#111827;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer}.cpm-submit:hover:not(:disabled){background:#1f2937}.cpm-submit:disabled{opacity:.5;cursor:not-allowed}.cpm-bulk{padding:20px;overflow-y:auto;overflow-x:hidden;flex:1;min-height:0}.cpm-bulk-hint{font-size:13px;color:#6b7280;margin:0 0 12px}.cpm-csv-input{width:100%;border:1px solid #d1d5db;border-radius:8px;padding:10px;font-size:13px;font-family:monospace;resize:vertical;box-sizing:border-box}.cpm-file-upload{margin-top:10px;font-size:13px;color:#6b7280}.cpm-file-upload input[type=file]{margin-left:8px}.cpm-bulk-table-wrapper{max-height:320px;overflow:auto;border:1px solid #e5e7eb;border-radius:8px;margin-bottom:12px}.cpm-bulk-table{min-width:100%;width:max-content;border-collapse:collapse;font-size:13px}.cpm-bulk-table th{background:#f9fafb;padding:8px 10px;text-align:left;font-weight:600;color:#374151;border-bottom:1px solid #e5e7eb;position:sticky;top:0}.cpm-bulk-table td{padding:6px 10px;border-bottom:1px solid #f3f4f6;color:#374151}.status-cell{width:40px;text-align:center}.status-icon{font-size:14px}.status-icon.ok{color:#16a34a}.status-icon.fail{color:#dc2626}.status-icon.spin{animation:spin 1s linear infinite;display:inline-block}.status-icon.skip{color:#9ca3af}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.result-cell{color:#dc2626;font-size:12px;white-space:nowrap}.bulk-row-invalid{background:#fef2f2}.bulk-row-success td{color:#15803d}.bulk-row-error{background:#fef2f2}.bulk-row-editable{cursor:pointer}.bulk-row-editable:hover{background:#f9fafb}.bulk-row-editing td{padding:0}.cpm-inline-edit{width:100%;height:34px;border:none;border-bottom:2px solid #3b82f6;background:#eff6ff;padding:0 10px;font-size:13px;font-family:monospace;outline:none;box-sizing:border-box}.cpm-bulk-summary{display:flex;gap:16px;padding:8px 0;font-size:14px;font-weight:500}.summary-ok{color:#16a34a}.summary-fail{color:#dc2626}.summary-skip{color:#9ca3af}.cpm-bulk-actions{display:flex;gap:10px;margin-top:8px}.cpm-bulk-actions .cpm-submit{flex:1}.cpm-secondary{flex:1;height:40px;background:#f3f4f6;color:#374151;border:none;border-radius:8px;font-size:14px;cursor:pointer}.cpm-secondary:hover{background:#e5e7eb}.cpm-cancel{flex:1;height:40px;background:#fef2f2;color:#b91c1c;border:1px solid #fca5a5;border-radius:8px;font-size:14px;cursor:pointer}.cpm-cancel:hover{background:#fee2e2}@media(max-width:640px){.cpm-modal{width:95%;max-height:90vh}.cpm-row-pair{flex-direction:column;gap:0}}.chat-drawer{display:flex;flex-direction:column;background:#fff;border-left:1px solid #e5e7eb;height:100%;overflow:hidden;transition:width .3s ease,opacity .3s ease}.chat-drawer.open{width:400px;min-width:400px;opacity:1}.chat-drawer.closed{width:0;min-width:0;opacity:0;border-left:none}.chat-drawer-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid #e5e7eb;background:#f9fafb;flex-shrink:0}.chat-drawer-header h3{margin:0;font-size:15px;font-weight:600;color:#111827;letter-spacing:.02em}.chat-model-select{flex:1;min-width:0;padding:5px 8px;border:1px solid #e5e7eb;border-radius:6px;background:#fff;color:#374151;font-size:12px;font-family:inherit;cursor:pointer;outline:none;transition:border-color .15s ease}.chat-model-select:focus{border-color:#3b82f6}.chat-model-select:disabled{opacity:.5;cursor:not-allowed}.chat-drawer-close{width:28px;height:28px;border-radius:6px;border:none;background:transparent;color:#6b7280;font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.chat-drawer-close:hover{background:#e5e7eb;color:#111827}.chat-messages{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:12px}.chat-empty{flex:1;display:flex;align-items:center;justify-content:center;text-align:center;padding:32px}.chat-empty p{color:#9ca3af;font-size:14px;line-height:1.5;margin:0}.chat-message{display:flex;flex-direction:column;max-width:85%}.chat-message.doctor{align-self:flex-end;align-items:flex-end}.chat-message.assistant{align-self:flex-start;align-items:flex-start}.chat-bubble{padding:10px 14px;border-radius:14px;font-size:14px;line-height:1.5;word-wrap:break-word;white-space:pre-wrap}.chat-message.doctor .chat-bubble{background:#3b82f6;color:#fff;border-bottom-right-radius:4px}.chat-message.assistant .chat-bubble{background:#f3f4f6;color:#111827;border-bottom-left-radius:4px}.chat-timestamp{font-size:11px;color:#9ca3af;margin-top:4px;padding:0 4px}.typing-dots{display:flex;gap:4px;padding:4px 0}.typing-dots span{width:7px;height:7px;border-radius:50%;background:#9ca3af;animation:typingBounce 1.4s ease-in-out infinite}.typing-dots span:nth-child(2){animation-delay:.2s}.typing-dots span:nth-child(3){animation-delay:.4s}@keyframes typingBounce{0%,60%,to{transform:translateY(0);opacity:.4}30%{transform:translateY(-6px);opacity:1}}.chat-error{font-size:13px;color:#ef4444;text-align:center;padding:8px 12px;background:#fef2f2;border-radius:8px}.chat-input-area{display:flex;align-items:flex-end;gap:8px;padding:12px 16px;border-top:1px solid #e5e7eb;background:#f9fafb;flex-shrink:0}.chat-input{flex:1;border:1px solid #e5e7eb;border-radius:10px;padding:10px 14px;font-size:14px;font-family:inherit;line-height:1.4;resize:none;max-height:120px;overflow-y:auto;background:#fff;color:#111827;outline:none;transition:border-color .15s ease}.chat-input:focus{border-color:#3b82f6}.chat-input::placeholder{color:#9ca3af}.chat-input:disabled{opacity:.6}.chat-send{width:38px;height:38px;border-radius:10px;border:none;background:#3b82f6;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .15s ease}.chat-send:hover:not(:disabled){background:#2563eb}.chat-send:disabled{background:#d1d5db;cursor:not-allowed}@media(max-width:768px){.chat-drawer.open{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;min-width:100%;z-index:10000}}@media(max-width:1024px)and (min-width:769px){.chat-drawer.open{width:340px;min-width:340px}}.doctor-dashboard{display:flex;flex-direction:column;height:100vh;background-color:#f9fafb}.doctor-content{display:flex;flex:1;position:relative;margin-top:60px;overflow:hidden}.patient-list-sidebar{width:320px;background:#fff;border-right:1px solid #e5e7eb;display:flex;flex-direction:column;transition:all .3s ease;transform:translate(0);z-index:200}.patient-list-sidebar.collapsed{width:60px;transform:translate(0)}.sidebar-header{display:flex;align-items:center;justify-content:space-between;padding:20px;border-bottom:1px solid #e5e7eb}.sidebar-header h2{font-size:20px;font-weight:600;color:#111827;margin:0}.patient-list-sidebar.collapsed .sidebar-header h2,.patient-list-sidebar.collapsed .sidebar-header-actions{display:none}.sidebar-header .btn-icon{width:32px;height:32px;border-radius:50%;border:1px solid #e5e7eb;background:#fff;color:#6b7280;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:18px;transition:all .2s ease}.sidebar-header .btn-icon:hover{background:#f3f4f6;color:#111827}.sidebar-header-actions{display:flex;gap:6px}.sidebar-header .btn-add{background:#111827;color:#fff;border-color:#111827;font-size:20px;font-weight:300}.sidebar-header .btn-add:hover{background:#1f2937;color:#fff}.sidebar-body{flex:1;overflow-y:auto;padding:8px}.patient-list{list-style:none;padding:0;margin:0}.patient-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:16px;margin-bottom:8px;cursor:pointer;transition:all .2s ease;position:relative}.patient-card:hover{border-color:#3b82f6;box-shadow:0 2px 8px #3b82f61a}.patient-card.active{border-color:#3b82f6;background:#eff6ff}.patient-card-header{display:flex;align-items:center;gap:12px;margin-bottom:12px}.patient-initials{width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,#3b82f6,#8b5cf6);color:#fff;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:600;flex-shrink:0}.patient-info{flex:1;min-width:0}.patient-info h3{font-size:16px;font-weight:600;color:#111827;margin:0 0 4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.patient-id{font-size:12px;color:#6b7280;margin:0;font-family:Courier New,monospace}.patient-card-meta{display:flex;flex-direction:column;gap:6px;font-size:13px}.meta-item{display:flex;justify-content:space-between;gap:8px}.meta-label{color:#6b7280;font-weight:500}.meta-value{color:#111827;font-weight:500;text-align:right}.meta-value.expires{color:#f59e0b}.btn-remove-connection{display:flex;align-items:center;gap:4px;padding:8px 12px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;color:#6b7280;font-size:16px;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap}.btn-remove-connection:hover{background:#fef2f2;border-color:#ef4444;color:#ef4444}.btn-remove-connection:disabled{opacity:.5;cursor:not-allowed}.patient-card-arrow{position:absolute;right:16px;top:50%;transform:translateY(-50%);font-size:24px;color:#d1d5db;transition:all .2s ease}.patient-card:hover .patient-card-arrow{color:#3b82f6;transform:translateY(-50%) translate(4px)}.patient-list-sidebar.collapsed .patient-card{padding:12px 8px;display:flex;justify-content:center}.patient-list-sidebar.collapsed .patient-info,.patient-list-sidebar.collapsed .patient-card-meta,.patient-list-sidebar.collapsed .patient-card-arrow{display:none}.loading-state,.error-state,.empty-state{padding:40px 20px;text-align:center;color:#6b7280}.loading-state{display:flex;align-items:center;justify-content:center;flex:1}.error-state button{margin-top:12px;padding:8px 16px;background:#3b82f6;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500}.error-state button:hover{background:#2563eb}.empty-state .hint{font-size:13px;color:#9ca3af;margin-top:8px}.patient-view-overlay{flex:1;background:#fff;display:flex;flex-direction:column;transform:translate(0);transition:transform .3s ease;overflow:hidden;animation:slideInFromRight .3s ease-out}.patient-view-header{display:flex;align-items:center;gap:16px;padding:16px 24px;border-bottom:1px solid #e5e7eb;background:#fff;position:sticky;top:0;z-index:10;transition:all .3s ease}.back-button{display:flex;align-items:center;gap:4px;padding:8px 12px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;color:#6b7280;font-size:16px;font-weight:500;cursor:pointer;transition:all .2s ease}.back-button:hover{background:#f3f4f6;border-color:#3b82f6;color:#3b82f6}.patient-name-header{flex:1}.patient-name-header h1{font-size:24px;font-weight:600;color:#111827;margin:0}.patient-view-body{display:flex;flex:1;overflow:hidden}.patient-view-content{flex:1;overflow-y:auto;padding:0}.patient-view-content .homeTemp{min-height:100%}.patient-view-content .homeTemp.mobile{height:100%}.patient-view-content .homeTemp .content{min-height:100%;padding-top:0}.btn-chat-toggle{padding:8px 16px;background:#111827;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap;flex-shrink:0}.btn-chat-toggle:hover{background:#1f2937}.placeholder-content{max-width:800px;margin:0 auto;padding:40px;text-align:center;color:#6b7280}.placeholder-content h2{color:#111827;margin-bottom:16px}@media(max-width:768px){.doctor-content{margin-top:0;flex-direction:column}.patient-list-sidebar{width:100%;flex:1;min-height:0;border-right:none}.patient-list-sidebar.collapsed{display:none}.patient-view-overlay{width:100%;flex:1;animation:none}}@keyframes slideInFromRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideOutToLeft{0%{transform:translate(0);opacity:1}to{transform:translate(-20%);opacity:0}}.activate-page{min-height:100vh;background-color:var(--clinic-bg, #f9fafb);display:flex;justify-content:center;padding:60px 20px}.activate-container{max-width:480px;width:100%;background-color:#fff;border-radius:16px;padding:40px;box-shadow:0 1px 3px #0000001a;height:fit-content}.clinic-branding{text-align:center;margin-bottom:24px}.clinic-logo{max-height:48px;max-width:200px;margin-bottom:12px}.clinic-name{font-size:14px;color:#6b7280;margin:0}.activate-container h1{font-size:24px;font-weight:600;color:#111827;margin:0 0 8px;text-align:center}.activate-subtitle{color:#6b7280;font-size:14px;text-align:center;margin:0 0 28px;line-height:1.5}.activate-form .form-group{margin-bottom:20px}.activate-form label{display:block;font-size:14px;font-weight:500;color:#111827;margin-bottom:6px}.activate-form input{width:100%;padding:10px 12px;border:2px solid #e5e7eb;border-radius:8px;font-size:14px;color:#111827;box-sizing:border-box;transition:border-color .2s}.activate-form input:focus{outline:none;border-color:var(--clinic-primary, #111827)}.activate-form input.input-error{border-color:#ef4444}.activate-form .inline-fields{display:flex;gap:12px}.activate-form .inline-fields .form-group{flex:1}.password-requirements{margin-top:8px;padding:10px 12px;background-color:#f9fafb;border-radius:6px}.password-requirements p{font-size:12px;color:#6b7280;margin:0 0 6px;font-weight:500}.password-requirements ul{list-style:none;padding:0;margin:0}.password-requirements li{font-size:12px;color:#9ca3af;padding:2px 0}.password-requirements li.met{color:#16a34a}.activate-submit{width:100%;padding:12px;font-size:15px;font-weight:600;border-radius:8px;border:none;background-color:var(--clinic-primary, #111827);color:#fff;cursor:pointer;transition:opacity .2s;margin-top:8px;min-height:44px;display:flex;align-items:center;justify-content:center}.activate-submit:hover:not(:disabled){opacity:.9}.activate-submit:disabled{background-color:#d1d5db;cursor:not-allowed}.activate-error{background-color:#fef2f2;border-left:3px solid #ef4444;color:#991b1b;padding:12px 16px;border-radius:6px;font-size:14px;margin-bottom:20px;line-height:1.5}.activate-warning{background-color:#fffbeb;border-left:3px solid #f59e0b;color:#92400e;padding:12px 16px;border-radius:6px;font-size:14px;margin-bottom:20px;line-height:1.5}.activate-success{text-align:center;animation:fadeIn .3s ease-in}.activate-success .success-icon{width:64px;height:64px;background-color:#dcfce7;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 20px;font-size:32px}.activate-success h2{font-size:22px;font-weight:600;color:#111827;margin:0 0 8px}.activate-success p{color:#6b7280;font-size:14px;margin:0 0 24px;line-height:1.5}.activate-success .btn-login{display:inline-block;padding:12px 32px;background-color:var(--clinic-primary, #111827);color:#fff;font-size:15px;font-weight:600;border-radius:8px;border:none;cursor:pointer;transition:opacity .2s;text-decoration:none}.activate-success .btn-login:hover{opacity:.9}.activate-locked{text-align:center}.activate-locked .locked-icon{width:64px;height:64px;background-color:#fef2f2;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 20px;font-size:32px}.activate-locked h2{font-size:22px;font-weight:600;color:#111827;margin:0 0 8px}.activate-locked p{color:#6b7280;font-size:14px;margin:0 0 16px;line-height:1.5}.activate-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 0}.activate-loading p{margin-top:16px;color:#6b7280;font-size:14px}.resend-section{margin-top:24px;padding-top:24px;border-top:1px solid #e5e7eb}.resend-section p{font-size:13px;color:#6b7280;margin:0 0 12px;text-align:center}.resend-section .resend-form{display:flex;gap:8px}.resend-section input{flex:1;padding:8px 12px;border:2px solid #e5e7eb;border-radius:8px;font-size:14px}.resend-section input:focus{outline:none;border-color:var(--clinic-primary, #111827)}.resend-section button{padding:8px 16px;background-color:var(--clinic-primary, #111827);color:#fff;border:none;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap}.resend-section button:disabled{background-color:#d1d5db;cursor:not-allowed}.resend-confirmation{text-align:center;font-size:13px;color:#16a34a;margin-top:8px}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media(max-width:640px){.activate-page{padding:20px 16px}.activate-container{padding:24px 20px}.activate-form .inline-fields{flex-direction:column;gap:0}.resend-section .resend-form{flex-direction:column}}.reset-page{width:100%;height:100vh;position:fixed;overflow:hidden}.reset-container{max-width:480px;width:100%;background:#fffc;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:16px;padding:40px;box-shadow:0 8px 32px #00000014;height:fit-content;position:relative;z-index:1;margin:60px auto 0}.reset-container h1{font-size:24px;font-weight:600;color:#111827;margin:0 0 8px;text-align:center}.reset-subtitle{color:#6b7280;font-size:14px;text-align:center;margin:0 0 28px;line-height:1.5}.reset-form .form-group{margin-bottom:20px}.reset-form label{display:block;font-size:14px;font-weight:500;color:#111827;margin-bottom:6px}.reset-form input{width:100%;padding:10px 12px;border:2px solid #e5e7eb;border-radius:8px;font-size:14px;color:#111827;box-sizing:border-box;transition:border-color .2s;background:#ffffffb3}.reset-form input:focus{outline:none;border-color:#111827}.reset-form .password-requirements{margin-top:8px;padding:10px 12px;background-color:#f9fafbcc;border-radius:6px}.reset-form .password-requirements p{font-size:12px;color:#6b7280;margin:0 0 6px;font-weight:500}.reset-form .password-requirements ul{list-style:none;padding:0;margin:0}.reset-form .password-requirements li{font-size:12px;color:#9ca3af;padding:2px 0}.reset-form .password-requirements li.met{color:#16a34a}.reset-submit{width:100%;padding:12px;font-size:15px;font-weight:600;border-radius:8px;border:none;background-color:#111827;color:#fff;cursor:pointer;transition:opacity .2s;margin-top:8px;min-height:44px;display:flex;align-items:center;justify-content:center}.reset-submit:hover:not(:disabled){opacity:.9}.reset-submit:disabled{background-color:#d1d5db;cursor:not-allowed}.reset-error{background-color:#fef2f2e6;border-left:3px solid #ef4444;color:#991b1b;padding:12px 16px;border-radius:6px;font-size:14px;margin-bottom:20px;line-height:1.5}.reset-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 0}.reset-loading p{margin-top:16px;color:#6b7280;font-size:14px}.reset-back-link{text-align:center;font-size:14px;color:#6b7280;margin-top:24px;padding-top:24px;border-top:1px solid #e5e7eb}.reset-back-link a{color:#111827;font-weight:600;text-decoration:none;cursor:pointer}.reset-back-link a:hover{text-decoration:underline}@media(max-width:640px){.reset-container{margin-top:20px;padding:24px 20px}}
