@font-face{font-family:'Clinic B Titr';src:url('assets/fonts/BTitrBd.ttf') format('truetype');font-weight:700;font-display:swap}
:root{font-family:'Clinic B Titr',Tahoma,sans-serif;color:#213b2b;background:#eaf0df;line-height:1.9;font-synthesis:none}*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0}button,input{font:inherit}button,a{touch-action:manipulation;-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}:focus-visible{outline:3px solid #879f3e;outline-offset:4px}button{cursor:pointer}button:disabled{cursor:wait;opacity:.6}.login-layout{display:grid;grid-template-columns:1fr 1fr;min-height:100svh}.login-story{position:relative;isolation:isolate;overflow:hidden;display:flex;flex-direction:column;min-height:100svh;color:#f5f6e8;padding:42px 52px;background:radial-gradient(ellipse at 5% 22%,#6a8b4d55,transparent 60%),radial-gradient(ellipse at 100% 110%,#94b66d44,transparent 60%),linear-gradient(145deg,#112c20,#183e2b)}.login-story:before{content:"";position:absolute;inset:0;z-index:-1;opacity:.2;background:radial-gradient(#e4f7b62e .7px,transparent .9px);background-size:25px 25px}.login-brand{display:flex;align-items:center;gap:14px;font-size:18px;position:relative;z-index:2}.login-brand small{display:block;font-size:11px;color:#b9cdb0;margin-top:2px}.login-brand-mark{display:grid;place-items:center;width:49px;height:49px;border-radius:16px;color:#d5eb91;border:1px solid #e9ffd64d;background:#e0ffb50b;box-shadow:inset 0 1px 0 #fff3;font-family:Arial,sans-serif;font-size:24px}.login-scene{height:280px;position:relative;flex:1;min-height:200px;margin:35px 0 5px;perspective:900px}.scene-ring{position:absolute;left:15%;top:10%;width:70%;height:85%;border:1px solid #e7ffc12e;border-radius:50%;transform:rotate(-30deg) rotateX(48deg);box-shadow:0 0 0 35px #e1ffa707,0 0 0 75px #e1ffa704}.scene-orb{position:absolute;width:200px;height:200px;top:5%;left:calc(50% - 100px);border-radius:50%;background:radial-gradient(circle at 25% 20%,#d9efb633,#87b66f0f 55%,transparent 75%)}.scene-glass{position:absolute;width:160px;height:160px;left:calc(50% - 80px);top:calc(45% - 80px);border:1px solid #edffd787;border-radius:37px;transform:rotateX(12deg) rotateY(-22deg) rotateZ(-12deg);transform-style:preserve-3d;background:radial-gradient(circle at 20% 15%,#ffffff7a,transparent 60%),linear-gradient(135deg,#c9eba33d,#83a87b26);box-shadow:inset 4px 4px 12px #edffd75c,inset -4px -8px 16px #041d144d,0 30px 70px #001b155c;backdrop-filter:blur(14px)}.scene-glass:after{content:"";position:absolute;inset:9px;border:1px solid #f1ffd545;border-radius:30px}.scene-glass span,.scene-glass b{position:absolute;left:calc(50% - 14px);top:calc(50% - 46px);width:28px;height:92px;border:1px solid #ffffe6b3;border-radius:9px;background:linear-gradient(145deg,#efffc0,#caeb8fa8);box-shadow:3px 7px 15px #173c254a,inset 1px 2px 0 #fff;transform:translateZ(20px)}.scene-glass b{width:92px;height:28px;left:calc(50% - 46px);top:calc(50% - 14px)}.scene-sphere{position:absolute;width:35px;height:35px;left:18%;top:12%;border-radius:50%;background:radial-gradient(circle at 30% 20%,#fcffe2,#d4ed92 40%,#648e54);box-shadow:0 13px 25px #001b1555}.login-story-copy{position:relative;z-index:1}.overline{font-size:12px;letter-spacing:.04em;color:#79924d}.login-story .overline{color:#d2e994}.login-story h1{font-size:clamp(31px,3vw,44px);line-height:1.65;margin:12px 0 16px;font-weight:700}.login-story h1 em{color:#d7ed9b;font-style:normal}.login-story-copy p{font-size:15px;color:#c5d5b9;max-width:430px;margin:0}.story-tags{display:flex;gap:8px;margin-top:25px}.story-tags span{border:1px solid #e4f4bf42;border-radius:50px;padding:6px 18px;font-size:12px;background:#ecffc20a;box-shadow:inset 0 1px 0 #fff2}.back-site{display:flex;justify-content:space-between;margin-top:40px;border-top:1px solid #e0f3c11c;padding-top:21px;font-size:12px;color:#cfdfc1}.back-site span{font-family:Arial;font-size:19px}.login-form-area{display:flex;flex-direction:column;justify-content:center;align-items:center;padding:45px 30px;background:radial-gradient(ellipse at 80% 20%,#dce7c3 0,transparent 55%),radial-gradient(ellipse at 0 90%,#d2e1bd66,transparent 60%),#f0f2e7}.login-card{width:min(100%,480px);padding:34px 36px;border-radius:27px;background:linear-gradient(145deg,#fffff5e6,#f5f7eac9);border:1px solid #fffef1;box-shadow:0 28px 70px #1b382712,inset 0 1px 0 #fff;backdrop-filter:blur(18px)}.card-top{display:flex;align-items:center;justify-content:space-between;gap:15px}.local-badge{font-size:10px;padding:3px 10px;border:1px solid #d5dfc5;border-radius:50px;color:#5b7347}.login-card h2{font-size:27px;line-height:1.7;margin:13px 0 8px}.login-lead{font-size:13px;color:#65765c;margin:0 0 23px}.loading-note{font-size:14px;color:#62794e}.role-choices{border:0;padding:0;margin:0 0 22px;display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.role-choices legend{font-size:12px;margin-bottom:9px}.role-choices label{position:relative;cursor:pointer}.role-choices input{position:absolute;opacity:0;inset:0;width:100%;height:100%;margin:0;cursor:pointer}.role-choices span{display:flex;align-items:center;justify-content:center;gap:8px;min-height:57px;border:1px solid #d5dfc8;border-radius:14px;background:#ffffff77;font-size:13px;color:#5a6e4d;box-shadow:0 4px 10px #1c382507,inset 0 1px 0 #fff;transition:background .2s,color .2s,box-shadow .2s}.role-choices svg{width:20px;height:20px}.role-choices input:checked+span{background:linear-gradient(145deg,#355b3e,#25452f);border-color:#315337;color:#e0efbb;box-shadow:0 7px 15px #1b3b2922,inset 0 1px 0 #dcf4b852}.role-choices input:focus-visible+span{outline:3px solid #819d4c;outline-offset:3px}.login-field{display:block;font-size:13px;margin-bottom:17px}.login-field input{display:block;min-height:49px;width:100%;margin-top:7px;border:1px solid #cdd8be;background:#ffffffb3;border-radius:12px;padding:10px 14px;font-family:Tahoma,Arial,sans-serif;font-size:15px;color:#253d2d;box-shadow:inset 0 2px 4px #1d352708}.login-field input:focus{background:white;border-color:#799654;box-shadow:0 0 0 3px #b2ce8233;outline:0}.login-field small{display:block;color:#748269;font-size:10px;line-height:1.8;margin-top:5px}.password-wrap{position:relative}.password-wrap input{padding-inline-end:52px}.password-wrap button{display:grid;place-items:center;position:absolute;inset-inline-end:5px;top:4px;width:42px;height:41px;border:0;border-radius:9px;background:transparent;color:#65834c}.password-wrap svg{width:21px;height:21px}.login-error{font-size:12px;color:#8d432c;line-height:1.9;margin:0 0 13px}.login-error:empty{display:none}.login-submit{width:100%;min-height:54px;display:flex;align-items:center;justify-content:space-between;gap:15px;border:1px solid #efffd2;background:linear-gradient(145deg,#e5f6ac,#c4dd7c);color:#233c2b;border-radius:14px;padding:12px 18px;box-shadow:0 8px 0 #a4b86645,0 13px 26px #284a2421,inset 0 2px 0 #ffffe6;transition:transform .2s,box-shadow .2s}.login-submit span{font-family:Arial,sans-serif;font-size:21px}.login-submit:hover{transform:translateY(-2px);box-shadow:0 10px 0 #a4b86645,0 17px 30px #284a2429,inset 0 2px 0 #ffffe6}.login-submit:active{transform:translateY(3px);box-shadow:0 3px 0 #a4b86645,0 5px 13px #284a2421}.password-help{font-size:11px;text-align:center;color:#728267;margin:25px 0 0}.login-card-foot{display:flex;align-items:flex-start;gap:9px;margin-top:23px;padding-top:19px;border-top:1px solid #dbe3cd}.login-card-foot p{margin:0;font-size:10px;color:#6e7e64;line-height:1.9}.security-dot{flex:none;width:6px;height:6px;margin-top:8px;background:#789646;border-radius:50%;box-shadow:0 0 0 4px #a9c57b22}.login-copyright{font-size:10px;color:#849176;margin-top:25px}
@media(max-width:980px){.login-story{padding:30px;min-height:100svh}.login-card{padding:28px}.login-form-area{padding:30px 22px}.login-story h1{font-size:31px}.login-brand{font-size:15px}.login-scene{min-height:170px}}
@media(max-width:700px){.login-layout{display:flex;flex-direction:column}.login-story{min-height:0;padding:22px 24px 24px}.login-brand{font-size:15px}.login-brand small{font-size:10px}.login-brand-mark{width:42px;height:42px}.login-story-copy,.login-scene,.back-site{display:none}.login-form-area{padding:24px 16px 30px;flex:1}.login-card{padding:25px 22px;border-radius:22px;max-width:480px}.login-card h2{font-size:26px}.login-lead{font-size:13px}.login-field input{font-size:16px;min-height:50px}.role-choices span{min-height:55px;font-size:13px;gap:6px}.role-choices svg{width:19px}.login-copyright{margin-top:22px}.login-submit{min-height:53px}.login-card-foot p{font-size:11px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important}.login-submit:hover,.login-submit:active{transform:none}}
@media(min-width:701px){.login-form-area{padding-block:28px}.login-card{padding:27px 30px}.login-card .login-field{margin-bottom:13px}.login-card .login-lead{margin-bottom:18px}.login-card .is-setup{display:grid;grid-template-columns:1fr 1fr;column-gap:14px}.is-setup>.login-field,.is-setup>fieldset,.is-setup>p,.is-setup>.login-submit{grid-column:1/-1}.is-setup>#nameField,.is-setup>.login-field:has(input[name=username]){grid-column:auto}.is-setup .password-help{margin-top:20px}.login-card-foot{margin-top:19px;padding-top:16px}.login-story{padding-block:32px}.login-story h1{font-size:clamp(30px,2.7vw,40px)}.login-scene{margin-top:20px;min-height:170px}.back-site{margin-top:25px}}

.login-success{padding:14px 16px;margin-block:16px;border:1px solid #a9c58c;border-radius:12px;background:#edf6df;color:#284b31;font-size:13px;line-height:1.9}
