@font-face{font-family:Fredoka;src:url(/assets/Fredoka-Variable-uBsOTgB9.ttf) format("truetype");font-style:normal;font-weight:300 700;font-display:swap}:root{color-scheme:light;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:var(--pv-ink);background:var(--pv-cream);font-synthesis:none;text-rendering:optimizeLegibility;--pv-yellow: #ffd21c;--pv-yellow-dark: #d89b00;--pv-green: #116b5c;--pv-green-dark: #0b4b42;--pv-ink: #17342f;--pv-cream: #fff9e8;--pv-coral: #ff715b;--pv-white: #ffffff;--brand: var(--pv-green);--brand-strong: var(--pv-green-dark);--brand-soft: #def2ec;--brand-yellow: var(--pv-yellow);--accent: var(--pv-coral);--ink: var(--pv-ink);--muted: #637a74;--line: #dce7e2;--surface: #ffffff;--surface-soft: #f3f7f4;--danger: #b93636;--warning: #9a6200;--shadow: 0 18px 45px rgb(28 66 57 / 10%);--radius: 18px}h1,h2,h3{font-family:Fredoka,Inter,ui-sans-serif,system-ui,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;min-height:100vh;background:var(--pv-cream)}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit}button{cursor:pointer}.pv-button{display:inline-flex;min-height:46px;align-items:center;justify-content:center;gap:8px;border:0;border-radius:999px;padding:0 20px;background:var(--brand);color:#fff;font-weight:750;text-decoration:none;transition:transform .16s ease,background .16s ease}.pv-button:hover{background:var(--brand-strong);transform:translateY(-1px)}.pv-button:disabled{cursor:not-allowed;opacity:.55;transform:none}.pv-button--secondary{border:1px solid var(--line);background:var(--surface);color:var(--ink)}.pv-button--danger{background:var(--danger)}.pv-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow)}.pv-field{display:grid;gap:7px}.pv-field>span{color:var(--muted);font-size:.86rem;font-weight:700}.pv-field input,.pv-field select,.pv-field textarea{width:100%;min-height:46px;border:1px solid var(--line);border-radius:12px;padding:10px 12px;background:#fff;color:var(--ink);outline:none}.pv-field textarea{min-height:96px;resize:vertical}.pv-field input:focus,.pv-field select:focus,.pv-field textarea:focus{border-color:var(--brand);box-shadow:0 0 0 3px #116b5c1f}.pv-alert{border-radius:12px;padding:12px 14px;background:#fce8e8;color:#812525;font-size:.92rem}.pv-empty{border:1px dashed var(--line);border-radius:14px;padding:22px;color:var(--muted);text-align:center}.pv-badge{display:inline-flex;width:fit-content;border-radius:999px;padding:5px 9px;background:var(--brand-soft);color:var(--brand-strong);font-size:.76rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.pv-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}.procedure-page{display:grid;min-width:0;gap:20px}.procedure-page__header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px}.procedure-page__header h1{margin:0 0 9px;font-size:clamp(2rem,4vw,2.65rem);letter-spacing:-.035em;font-weight:600}.procedure-page__header p{max-width:530px;margin:0;color:var(--muted);font-size:.85rem;line-height:1.7}.procedure-page__header .pv-button{min-height:44px;padding-inline:16px;font-size:.78rem}.procedure-filters{display:grid;gap:13px;padding:18px;border:1px solid var(--line);border-radius:16px;background:#fff}.procedure-filters .pv-field{min-width:0}.procedure-filters .pv-field>span{font-size:.71rem}.procedure-filters input,.procedure-filters select{width:100%;min-width:0;min-height:43px;font-size:.8rem}.procedure-search>div{position:relative}.procedure-search svg{position:absolute;left:13px;top:12px;width:19px;height:19px;color:var(--muted)}.procedure-search input{padding-left:41px}.procedure-results{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;color:var(--muted);font-size:.77rem}.procedure-results small{font-size:.7rem}.procedure-grid,.procedure-skeleton{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,265px),1fr));gap:17px}.procedure-card{display:flex;min-width:0;flex-direction:column;border:1px solid var(--line);border-radius:19px;padding:21px;background:#fff;box-shadow:0 4px 16px #1e483708;overflow-wrap:anywhere}.procedure-card--archived{background:#fafbfa}.procedure-card>header{display:flex;align-items:center;justify-content:space-between;gap:10px}.procedure-card__icon{display:inline-grid;width:41px;height:43px;flex-shrink:0;place-items:center;border-radius:12px;background:#e6f3ed;color:#2c755f}.procedure-card__icon[data-type=vaccination]{background:#fff0e9;color:#be6548}.procedure-card__icon[data-type=imaging],.procedure-card__icon[data-type=blood_test]{background:#eef0fa;color:#636999}.procedure-card__icon[data-type=hygiene],.procedure-card__icon[data-type=grooming]{background:#fff5d9;color:#916d1d}.procedure-type{max-width:75%;border:1px solid #e6ece8;border-radius:7px;padding:5px 7px;color:#4a655b;font-size:.64rem;font-weight:650;line-height:1.5;text-align:right}.procedure-card h2{margin:18px 0 8px;font-size:1.22rem;font-weight:550;line-height:1.3}.procedure-card__description{display:-webkit-box;min-height:54px;margin:0 0 19px;overflow:hidden;-webkit-line-clamp:3;-webkit-box-orient:vertical;color:var(--muted);font-size:.77rem;line-height:1.65}.procedure-card dl{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:auto 0 15px;border-top:1px solid #eef2ef;padding-top:15px}.procedure-card dt{margin-bottom:5px;color:var(--muted);font-size:.65rem}.procedure-card dd{margin:0;font-size:.91rem;font-weight:700}.procedure-species{color:var(--muted);font-size:.72rem;line-height:1.6}.procedure-card__modes{display:flex;flex-wrap:wrap;gap:7px;min-height:30px;margin:13px 0 19px;padding:0;list-style:none}.procedure-card__modes li{display:inline-flex;align-items:center;gap:5px;border-radius:6px;padding:5px 6px;background:#f2f7f4;color:#486258;font-size:.61rem}.procedure-card__modes svg{width:13px;height:13px;flex-shrink:0}.procedure-card>footer{display:flex;align-items:center;justify-content:space-between;gap:8px;border-top:1px solid #eef2ef;padding-top:15px}.procedure-card>footer .pv-button{min-height:39px;padding-inline:14px;font-size:.71rem}.procedure-card>footer .pro-text-button{font-size:.71rem}.procedure-empty{display:grid;justify-items:center;padding:42px 24px;text-align:center;box-shadow:none}.procedure-empty>span{display:grid;width:60px;height:60px;place-items:center;border-radius:18px;background:var(--brand-soft);color:var(--brand)}.procedure-empty h2{margin:20px 0 7px;font-size:1.6rem;font-weight:550}.procedure-empty p{max-width:420px;margin:0 0 22px;color:var(--muted);font-size:.86rem;line-height:1.7}.procedure-skeleton>div{height:320px;border:1px solid var(--line);border-radius:19px;background:linear-gradient(135deg,#fff,#eef5f0)}.procedure-pagination{display:flex;align-items:center;justify-content:center;gap:15px}.procedure-pagination button{min-height:40px;border:1px solid var(--line);border-radius:9px;padding:6px 12px;background:#fff;color:var(--brand);font-size:.76rem}.procedure-pagination span{color:var(--muted);font-size:.73rem}.procedure-recent{margin-top:9px;padding:21px;box-shadow:none}.procedure-recent>header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:7px;margin-bottom:10px}.procedure-recent h2{margin:0;font-size:1.25rem;font-weight:550}.procedure-recent header>span{font-size:.73rem}.procedure-recent ul{margin:0;padding:0;list-style:none}.procedure-recent li{display:grid;grid-template-columns:30px minmax(0,1fr);align-items:center;gap:6px 10px;padding:15px 0;border-top:1px solid #edf2ee}.procedure-recent li:first-child{border-top:0}.procedure-recent li:last-child{padding-bottom:0}.procedure-recent li>div{display:grid;gap:5px}.procedure-recent li strong{font-size:.81rem;overflow-wrap:anywhere}.procedure-recent li>div>span,.procedure-recent time{color:var(--muted);font-size:.7rem}.procedure-recent time{grid-column:2}.procedure-recent__mark{display:grid;width:28px;height:28px;place-items:center;border-radius:50%;background:#eaf5ef;color:var(--brand)}.procedure-recent__mark svg{width:15px}.procedure-dialog{width:min(680px,calc(100% - 24px));max-width:none;max-height:calc(100dvh - 24px);margin:auto;border:0;border-radius:21px;padding:0;background:#fff;color:var(--ink);box-shadow:0 24px 100px #0a2d1e40}.procedure-dialog::backdrop{background:#0e271f7d;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.procedure-dialog__layout{display:flex;width:100%;max-height:calc(100dvh - 24px);flex-direction:column}.procedure-dialog__header{display:flex;flex-shrink:0;align-items:center;justify-content:space-between;gap:14px;border-bottom:1px solid var(--line);padding:21px 22px}.procedure-dialog__header h2{margin:0 0 5px;font-size:1.35rem;font-weight:550}.procedure-dialog__header p{margin:0;color:var(--muted);font-size:.75rem;overflow-wrap:anywhere}.procedure-dialog__form{display:flex;min-height:0;flex-direction:column}.procedure-dialog__body{min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:23px}.procedure-dialog__body .pv-field input,.procedure-dialog__body .pv-field select,.procedure-dialog__body .pv-field textarea{width:100%;min-width:0;font-size:.86rem}.procedure-dialog__body .pv-alert{margin-top:16px}.procedure-dialog__footer{display:flex;flex-shrink:0;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid var(--line);padding:17px 21px;background:#fafcfb}.procedure-dialog__footer>span{display:none}.procedure-dialog__footer button{flex:1;min-width:0;padding:9px 13px;font-size:.8rem;line-height:1.35}.procedure-steps{display:grid;grid-template-columns:repeat(4,1fr);flex-shrink:0;margin:0;padding:18px 16px;border-bottom:1px solid #eef2ef;background:#fafcfb;list-style:none}.procedure-steps li{position:relative;display:grid;justify-items:center;gap:7px;color:#637a74}.procedure-steps li:before{position:absolute;top:14px;right:calc(50% + 21px);width:calc(100% - 42px);height:1px;background:#dbe7df;content:""}.procedure-steps li:first-child:before{display:none}.procedure-steps li>span{display:grid;width:29px;height:29px;place-items:center;border:1px solid #d1ded7;border-radius:50%;background:#fff;font-size:.75rem;font-weight:700}.procedure-steps li small{font-size:.61rem;text-align:center}.procedure-steps li.current{color:var(--brand);font-weight:800}.procedure-steps li.current>span{border-color:var(--brand);background:var(--brand);color:#fff}.procedure-steps li.done>span{border-color:#cee4d8;background:#e4f1e9;color:var(--brand)}.procedure-steps svg{width:17px;height:17px}.procedure-step-title{margin:0 0 23px;font-size:1.25rem;font-weight:500;line-height:1.4}.procedure-autocomplete{position:relative}.procedure-suggestions{position:absolute;z-index:2;top:100%;right:0;left:0;max-height:225px;margin:6px 0 0;padding:4px;overflow-y:auto;border:1px solid #c9ddd2;border-radius:12px;background:#fff;box-shadow:0 10px 24px #18422b17;list-style:none}.procedure-suggestions button{display:grid;width:100%;gap:4px;border:0;border-radius:8px;padding:11px 10px;background:#fff;text-align:left}.procedure-suggestions button:hover,.procedure-suggestions button[aria-selected=true]{background:#edf7f0}.procedure-suggestions strong{color:var(--ink);font-size:.8rem}.procedure-suggestions span{color:var(--muted);font-size:.71rem}.procedure-modes{display:grid;gap:10px;margin:0;padding:0;border:0}.procedure-modes legend{margin-bottom:13px;color:var(--ink);font-size:.83rem;font-weight:700}.procedure-modes label{display:flex;align-items:center;gap:13px;border:1px solid var(--line);border-radius:13px;padding:15px;cursor:pointer}.procedure-modes label.selected{border-color:#9bc7b4;background:#f1f9f4}.procedure-modes input{accent-color:var(--brand)}.procedure-modes label>svg{flex-shrink:0;color:var(--brand)}.procedure-modes label>span{display:grid;gap:5px}.procedure-modes strong{font-size:.83rem}.procedure-modes small{color:var(--muted);font-size:.72rem;line-height:1.5}.procedure-review{padding:18px;border:1px solid var(--line);border-radius:15px;background:#fcfdfc;overflow-wrap:anywhere}.procedure-review h4{margin:14px 0 9px;font-size:1.35rem;line-height:1.35}.procedure-review>p{color:var(--muted);font-size:.84rem;line-height:1.65}.procedure-review dl{display:grid;gap:15px;border-top:1px solid var(--line);padding-top:17px}.procedure-review dt{margin-bottom:5px;color:var(--muted);font-size:.69rem}.procedure-review dd{margin:0;font-size:.83rem;font-weight:650;line-height:1.55}.record-patient h3,.record-selection h3{margin:0 0 12px;font-size:1.16rem;font-weight:550}.record-patient__lookup{display:grid;gap:10px;margin-top:15px}.record-patient__lookup .pv-button{font-size:.8rem}.patient-methods{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:18px}.patient-methods button{display:grid;min-height:74px;justify-items:center;align-content:center;gap:7px;border:1px solid var(--line);border-radius:12px;padding:11px 5px;background:#fff;color:var(--muted);font-size:.74rem;font-weight:650}.patient-methods button[aria-pressed=true]{border-color:#87b6a2;background:#ecf6ef;color:var(--brand-strong)}.patient-photo{display:inline-grid;width:72px;height:72px;flex-shrink:0;place-items:center;overflow:hidden;border-radius:20px;background:#f4f5e9}.patient-photo img{width:60px;height:60px;object-fit:contain}.patient-photo--real img{width:100%;height:100%;object-fit:cover}.patient-results{display:grid;gap:13px;margin-top:18px}.patient-results__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.patient-results__grid button{display:grid;gap:11px;min-width:0;justify-items:center;align-content:start;border:1px solid var(--line);border-radius:15px;padding:18px 10px;background:#fff;color:var(--ink)}.patient-results__grid button:hover{border-color:#87b6a2;background:#f3f9f5}.patient-results__grid strong{font-size:.93rem;overflow-wrap:anywhere}.patient-identity{display:grid;gap:5px;width:100%;text-align:center}.patient-identity small,.patient-last-visit,.patient-selected p small{color:var(--muted);font-size:.73rem;font-weight:450;line-height:1.5;overflow-wrap:anywhere}.patient-selected p small{display:block;margin-top:4px}.patient-list-search{display:grid;gap:8px;margin-top:14px}.patient-list-search>p{margin:0}@media(min-width:560px){.patient-methods{grid-template-columns:repeat(4,minmax(0,1fr))}}.patient-selected{display:flex;align-items:center;gap:12px;margin-top:16px;border:1px solid #c7e1d3;border-radius:15px;padding:14px;background:#eef8f1}.patient-selected .patient-photo{width:58px;height:58px;border-radius:16px}.patient-selected .patient-photo img{max-width:100%;max-height:100%}.patient-selected>div{flex:1;min-width:0}.patient-selected>div>span{display:flex;align-items:center;gap:5px;color:var(--brand);font-size:.7rem}.patient-selected>div>span svg{width:15px;height:15px}.patient-selected p{margin:5px 0 0;font-size:1.03rem;font-weight:700;overflow-wrap:anywhere}.patient-selected>button{flex-shrink:0;padding-inline:5px;font-size:.74rem}.pet-qr-reader{display:grid;gap:13px;margin-top:18px}.pet-qr-reader__camera{position:relative;height:220px;overflow:hidden;border:1px solid #cdded5;border-radius:16px;background:#eff5f1}.pet-qr-reader__camera.active{background:#112c25}.pet-qr-reader__camera video{width:100%;height:100%;object-fit:cover}.pet-qr-reader__placeholder{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;align-content:center;justify-items:center;gap:12px;padding:20px;text-align:center}.pet-qr-reader__placeholder>svg{width:56px;height:56px;color:var(--brand)}.pet-qr-reader__placeholder strong{font-size:.94rem}.pet-qr-reader__placeholder span{color:var(--muted);font-size:.77rem;line-height:1.5}.pet-qr-reader__actions{display:flex;flex-wrap:wrap;gap:8px}.pet-qr-reader__actions button{flex:1;padding:8px 12px;font-size:.75rem}.patient-file-input{display:none}.record-selection{display:grid;gap:13px;border-top:1px solid var(--line);padding-top:23px}.record-selection>h3{margin-bottom:0}.record-entries{display:grid;gap:14px}.record-entries article{display:grid;min-width:0;gap:15px;border:1px solid var(--line);border-radius:15px;padding:17px;background:#fcfdfc}.record-entries header{display:flex;align-items:start;justify-content:space-between;gap:10px}.record-entries header>div{min-width:0;overflow-wrap:anywhere}.record-entries header small{color:var(--brand);font-size:.69rem}.record-entries h4{margin:7px 0;font-size:.94rem}.record-entries header span{color:var(--muted);font-size:.74rem}.record-notice{margin:0;border-radius:12px;padding:14px;background:#f1f6f3;color:#4b685b;font-size:.78rem;line-height:1.65}@media(min-width:620px){.procedure-filters{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) minmax(0,.75fr)}.procedure-recent li{grid-template-columns:30px minmax(0,1fr) auto}.procedure-recent time{grid-column:auto}.procedure-dialog__header,.procedure-dialog__body{padding:24px 29px}.procedure-dialog__footer{padding-inline:29px}.procedure-dialog__footer>span{display:block;font-size:.72rem}.procedure-dialog__footer button{flex:initial;padding-inline:22px}.procedure-steps{padding-inline:29px}.procedure-steps li small{font-size:.7rem}.procedure-review dl{grid-template-columns:repeat(2,minmax(0,1fr))}.record-patient__lookup{grid-template-columns:minmax(0,1fr) auto;align-items:end}}@media(prefers-reduced-motion:reduce){.procedure-dialog *,.procedure-page *{scroll-behavior:auto}}.pro-brand{display:inline-flex;align-items:center;gap:8px;text-decoration:none}.pro-brand>img{display:block;width:140px;height:auto}.pro-brand small{border-radius:5px;padding:3px 5px;background:#ffffff1f;color:#fff;font-size:.55rem;font-weight:850;letter-spacing:.08em}.pro-auth{display:grid;min-height:100vh}.pro-auth__intro{display:grid;align-content:space-between;gap:48px;min-height:380px;padding:28px 24px 44px;background:radial-gradient(circle at 85% 20%,rgb(255 113 91 / 24%),transparent 35%),var(--brand-strong);color:#fff}.pro-auth__intro h1{max-width:650px;margin:14px 0;font-size:clamp(2.35rem,6vw,4.8rem);line-height:1.05;letter-spacing:-.045em}.pro-auth__intro p{max-width:620px;margin:0;color:#ffffffc7;font-size:1.05rem;line-height:1.6}.pro-kicker{color:#ffb899;font-size:.76rem;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.pro-auth__intro ul{display:flex;flex-wrap:wrap;gap:10px 24px;margin:0;padding:0;color:#ffffffd1;list-style:none;font-size:.82rem;font-weight:650}.pro-auth__intro li:before{content:"✓";margin-right:7px;color:#9ae3cf}.pro-auth__form{display:grid;place-items:center;padding:34px 18px;background:#f4f7f4}.pro-auth-card{width:min(100%,620px);padding:26px;box-shadow:none}.pro-auth-card h2{margin:14px 0 6px;font-size:1.85rem;letter-spacing:-.04em}.pro-auth-card>p{color:var(--muted);line-height:1.6}.pro-form-grid{display:grid;gap:15px}.pro-fieldset{display:grid;min-width:0;gap:17px;margin:0;padding:0;border:0}.pro-fieldset .pv-field{min-width:0}.pro-fieldset .pv-field>span>small{color:var(--muted);font-weight:400}.pro-muted{color:var(--muted);font-size:.85rem;line-height:1.6}.pro-field-help{margin:0;color:var(--muted);font-size:.76rem;line-height:1.6}.pro-eyebrow{display:block;margin-bottom:8px;color:var(--brand);font-size:.66rem;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.form-actions{display:flex;flex-wrap:wrap;gap:9px}.onboarding{display:grid;min-height:100vh;place-items:center;padding:24px;background:#f1f6f3}.onboarding>section{width:min(100%,720px);padding:28px}.onboarding h1{margin:14px 0 5px;font-size:2.2rem}.onboarding>section>p{margin:0 0 24px}.pro-loading{display:grid;min-height:50vh;place-items:center;align-content:center;color:var(--muted)}.pro-loading img{width:54px;height:54px}.pro-layout{min-height:100vh;background:#f4f7f5}.pro-sidebar{display:none}.pro-main{min-width:0;padding-bottom:88px}.pro-topbar{position:sticky;z-index:20;top:0;display:flex;min-height:72px;align-items:center;justify-content:space-between;gap:20px;padding:12px 20px;border-bottom:1px solid var(--line);background:#fffffff2;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.pro-topbar>div{display:grid;min-width:0;gap:4px}.pro-topbar small{color:var(--muted);font-size:.68rem}.pro-topbar strong{font-size:.9rem;overflow-wrap:anywhere}.pro-avatar{display:grid;width:38px;height:38px;flex-shrink:0;place-items:center;border-radius:50%;background:var(--brand-soft);color:var(--brand);font-size:.9rem;font-weight:850}.pro-content{display:grid;gap:22px;max-width:1440px;margin:0 auto;padding:24px 16px}.pro-panel{min-width:0;padding:23px;box-shadow:none}.pro-panel>header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:24px}.pro-panel h1{margin:0 0 6px;font-size:clamp(1.8rem,6vw,2.3rem);letter-spacing:-.035em}.pro-panel h2{margin-top:0;font-size:1.35rem}.pro-panel header p{margin:0;color:var(--muted);font-size:.86rem;line-height:1.6}.profile-stack{display:grid;gap:18px}.profile-stack form>button{margin-top:20px}.profile-actions{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px}.verification{flex-shrink:0;border-radius:999px;padding:7px 10px;background:#f3ead7;color:#795817;font-size:.65rem;font-weight:800}.verification--verified,.verification--active{background:var(--brand-soft);color:var(--brand)}.verification--rejected,.verification--suspended,.verification--blocked{background:#f8e3e3;color:var(--danger)}.pro-inline-form{display:grid;gap:17px;margin-top:20px;border-top:1px solid var(--line);padding-top:20px}.pro-inline-form.no-border{margin-top:0;border-top:0;padding-top:0}.check-field{display:flex;min-height:46px;align-items:center;gap:8px;color:var(--muted);font-size:.85rem;font-weight:650}.species-options{display:flex;flex-wrap:wrap;gap:8px;margin:0;border:0;padding:0}.species-options legend{width:100%;margin-bottom:10px;color:var(--muted);font-size:.8rem}.species-options label{display:flex;align-items:center;gap:5px;border:1px solid var(--line);border-radius:999px;padding:9px 12px;font-size:.8rem}.provider-context{display:flex;align-items:center;justify-content:space-between;gap:16px;min-width:0;padding-bottom:20px;border-bottom:1px solid var(--line)}.provider-context label{display:grid;min-width:0;width:100%;max-width:430px;gap:7px}.provider-context label>span{font-size:.69rem;color:var(--muted);font-weight:700}.provider-context select{width:100%;min-width:0;min-height:43px;border:1px solid var(--line);border-radius:12px;padding:8px 12px;background:#fff;color:var(--ink);font-size:.8rem;font-weight:700}.provider-context__hint{display:none;color:var(--muted);font-size:.73rem}.pro-success{display:flex;align-items:center;gap:10px;margin-bottom:5px;border:1px solid #cae5d9;border-radius:12px;padding:14px 16px;background:#edf8f2;color:#185d46;font-size:.84rem;line-height:1.5}.pro-success>svg{flex-shrink:0}.pro-text-button{min-height:40px;border:0;padding:8px 10px;background:transparent;color:var(--brand);font-size:.8rem;font-weight:750}.pro-icon-button{display:inline-grid;width:40px;height:40px;flex-shrink:0;place-items:center;border:1px solid var(--line);border-radius:50%;background:#fff;color:var(--muted)}.registration-type-note{margin:0;border-left:3px solid #73ad96;border-radius:0 9px 9px 0;padding:11px 13px;background:#f0f7f3;color:#3f5f53;font-size:.79rem;line-height:1.6}.pro-portal-link{margin:20px 0 0;border-top:1px solid var(--line);padding-top:18px;font-size:.79rem}.pro-portal-link a{color:var(--brand);font-weight:750}.header-context{display:grid;min-width:0;width:min(46vw,440px);gap:4px;margin-left:auto}.header-context>span{color:var(--muted);font-size:.62rem;font-weight:750}.header-context select{width:100%;min-width:0;min-height:40px;border:1px solid var(--line);border-radius:10px;padding:6px 32px 6px 10px;background:#fff;color:var(--ink);font-size:.75rem;font-weight:700}.invitation-count{display:inline-grid;min-width:19px;height:19px;place-items:center;border-radius:999px;padding:0 5px;background:var(--accent);color:#472214;font-size:.61rem;font-weight:850}.links-page{display:grid;min-width:0;gap:20px}.link-list{display:grid;gap:0;margin:0;padding:0;list-style:none}.link-list>li{display:grid;gap:12px;border-top:1px solid var(--line);padding:18px 0}.link-list>li:first-child{border-top:0;padding-top:4px}.link-list>li:last-child{padding-bottom:0}.link-card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.link-card-heading h3{margin:0 0 5px;font-size:1rem}.link-card-heading p,.invitation-message{margin:0;color:var(--muted);font-size:.76rem;line-height:1.55}.invitation-message{border-radius:9px;padding:10px 12px;background:var(--surface-soft);color:var(--ink)}.link-status{flex-shrink:0;border-radius:999px;padding:6px 9px;background:#edf1ef;color:var(--muted);font-size:.62rem;font-weight:800}.link-status--pending{background:#fff1d2;color:#795817}.link-status--accepted{background:var(--brand-soft);color:var(--brand)}.link-status--declined,.link-status--cancelled{background:#f7e8e8;color:var(--danger)}.pro-admin-link{display:block;margin:0 10px 14px;color:#bfe4d7;font-size:.76rem;font-weight:700;text-decoration:none}.personal-workspace{display:grid;justify-items:start;gap:14px}.personal-workspace h1{margin:0;font-size:clamp(1.8rem,5vw,2.4rem)}.personal-workspace p{max-width:660px;margin:0;color:var(--muted);line-height:1.7}.pro-bottom-nav{position:fixed;z-index:30;right:0;bottom:0;left:0;display:flex;min-height:70px;padding-bottom:env(safe-area-inset-bottom);border-top:1px solid var(--line);background:#fffffff7;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.pro-bottom-nav button,.pro-sidebar nav button{display:grid;min-width:0;place-items:center;align-content:center;gap:5px;border:0;background:none;color:var(--muted);font-size:.7rem;font-weight:700}.pro-bottom-nav button{position:relative;flex:1}.pro-bottom-nav .invitation-count{position:absolute;margin:-21px 0 0 34px}.pro-bottom-nav button.active{color:var(--brand)}.pro-layout :focus-visible,.procedure-dialog :focus-visible{outline:3px solid #70b69f;outline-offset:3px}.pro-layout .pv-button--secondary:hover,.procedure-dialog .pv-button--secondary:hover{background:var(--brand-soft);color:var(--brand-strong)}.pro-layout button:disabled,.procedure-dialog button:disabled{cursor:default;opacity:.55}@media(min-width:720px){.pro-auth{grid-template-columns:minmax(280px,.85fr) minmax(420px,1.15fr)}.pro-auth__intro{min-height:100vh;padding:36px}.pro-auth__form{padding:32px}.pro-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pro-form-grid .full{grid-column:1 / -1}.provider-context__hint{display:block}.pro-content{padding:28px}}@media(max-width:719px){.pro-topbar{gap:10px}.pro-topbar>div{display:none}.header-context{width:100%;margin:0}.pro-avatar{width:36px;height:36px}.link-card-heading{align-items:stretch;flex-direction:column}.link-status{align-self:flex-start}}@media(min-width:980px){.pro-layout{display:grid;grid-template-columns:225px minmax(0,1fr)}.pro-sidebar{position:sticky;top:0;display:flex;height:100dvh;flex-direction:column;padding:30px 18px;background:var(--brand-strong)}.pro-sidebar nav{display:grid;gap:8px;margin-top:48px}.pro-sidebar nav button{grid-template-columns:28px minmax(0,1fr) auto;justify-items:start;min-height:48px;border-radius:12px;padding:0 12px;color:#ffffffc2;font-size:.82rem;text-align:left}.pro-sidebar nav button.active{background:#ffffff1f;color:#fff}.pro-sidebar nav .invitation-count{margin-left:auto}.pro-sidebar__note{margin-top:auto;padding:22px 10px;color:#fffc}.pro-sidebar__note strong{font-size:.83rem}.pro-sidebar__note p{font-size:.74rem;line-height:1.7}.pro-logout{border:0;border-top:1px solid rgb(255 255 255 / 15%);padding:18px 10px 0;background:none;color:#fffc;text-align:left;font-size:.79rem}.pro-main{padding-bottom:0}.pro-topbar{padding-inline:32px}.pro-content{padding:28px 32px 45px}.pro-panel{padding:30px}.pro-bottom-nav{display:none}}.registration-wizard{min-width:0}.registration-progress{display:flex;justify-content:space-between;gap:12px;margin-top:24px;color:var(--brand);font-size:.76rem;font-weight:650}.registration-wizard progress{display:block;width:100%;height:5px;border:0;border-radius:10px;margin:10px 0 24px;accent-color:var(--brand);background:var(--brand-soft)}.registration-wizard progress::-webkit-progress-bar{background:var(--brand-soft);border-radius:10px}.registration-wizard progress::-webkit-progress-value{background:var(--brand);border-radius:10px}.registration-email{overflow-wrap:anywhere;color:var(--brand);font-size:.86rem}.registration-types{display:grid;gap:10px;margin:0;border:0;padding:0}.registration-choice{display:flex;align-items:center;gap:12px;padding:15px;border:1px solid #dce5df;border-radius:14px;background:#fff;cursor:pointer}.registration-choice:hover,.registration-choice.is-selected{border-color:var(--brand);background:#f0f7f3}.registration-choice:focus-within{outline:3px solid #93b6a8;outline-offset:2px}.registration-choice input{width:19px;height:19px;flex-shrink:0;accent-color:var(--brand)}.registration-choice img{width:44px;height:44px;object-fit:contain}.registration-choice strong{display:block;font-size:.95rem}.registration-choice small{display:block;margin-top:4px;font-size:.78rem;line-height:1.45;color:#5c6e65}.registration-fields{display:grid;gap:18px}.registration-actions{display:flex;flex-direction:column;gap:6px;margin-top:12px}.registration-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.registration-wizard h2:focus,.pro-auth-card h2:focus{outline:none}@media(max-width:699px){.pro-auth{grid-template-rows:auto 1fr}.pro-auth__intro{min-height:auto;padding:20px 24px;gap:16px}.pro-auth__intro>div,.pro-auth__intro>ul{display:none}.pro-auth__form{padding:22px 16px;align-items:start}.pro-auth-card{padding:22px}.registration-progress{flex-wrap:wrap}}.registration-invite-result{display:grid;gap:12px;padding:16px;border-radius:14px;background:var(--brand-soft)}.profile-hub{width:min(100%,680px);margin:0 auto}.profile-header{display:grid;justify-items:center;gap:12px;padding:16px 0 30px;text-align:center}.profile-photo{display:grid;width:96px;height:96px;place-items:center;overflow:hidden;border:4px solid white;border-radius:50%;background:var(--brand-soft);color:var(--brand);font-size:1.8rem;font-weight:800}.profile-photo img{width:100%;height:100%;object-fit:cover}.profile-header h1{margin:0;color:var(--ink);font-size:clamp(1.4rem,5vw,1.9rem);letter-spacing:-.03em;overflow-wrap:anywhere}.profile-header p{margin:0;color:var(--muted);font-size:.82rem}.profile-menu{overflow:hidden;padding:0 18px;box-shadow:none}.profile-menu button{display:flex;width:100%;min-height:72px;align-items:center;gap:14px;border:0;border-bottom:1px solid var(--line);padding:15px 4px;background:transparent;color:var(--ink);text-align:left;font-size:.9rem;font-weight:650}.profile-menu button:hover{background:var(--brand-soft)}.profile-menu button>svg{flex-shrink:0;color:var(--brand)}.profile-menu button>span:nth-child(2){flex:1}.profile-menu button>span:last-child{color:var(--muted);font-size:1.5rem;font-weight:400}.profile-menu button:last-child{border-bottom:0}.profile-menu .profile-menu__logout,.profile-menu__logout>svg{color:var(--danger)}.profile-back{display:inline-flex;align-items:center;gap:8px}.registration-progress>span{min-width:0;overflow-wrap:anywhere}.registration-progress>span:last-child{max-width:70%;text-align:right}.registration-choice>span{min-width:0;overflow-wrap:anywhere}.management-heading,.management-section-heading{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:18px}.management-heading h1{margin:8px 0}.management-heading p{max-width:620px;margin:0;color:var(--muted)}.management-section-heading h2,.management-section-heading p{margin:0 0 8px}.management-saved{border-radius:12px;padding:14px 18px;background:var(--brand-soft);color:var(--brand)}.management-units{display:grid;gap:14px}.management-unit{display:flex;flex-wrap:wrap;align-items:center;gap:16px;padding:20px;box-shadow:none}.management-unit-icon{display:grid;flex:none;width:48px;height:48px;place-items:center;border-radius:14px;background:var(--brand-soft);color:var(--brand)}.management-unit-info{flex:1;min-width:170px;overflow-wrap:anywhere}.management-unit h2{margin:5px 0;font-size:1.15rem}.management-unit p,.management-unit small,.management-businesses p,.management-businesses small{color:var(--muted)}.management-unit p{margin:0 0 8px;font-size:.85rem}.management-unit>button svg{transform:rotate(180deg)}.management-business-select{max-width:440px;margin:18px 0}.management-businesses article{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;border-top:1px solid var(--line);padding:16px 0}.management-businesses h3,.management-businesses p{margin:0 0 6px;overflow-wrap:anywhere}.management-business-form{padding:24px}.management-business-form fieldset{display:grid;gap:16px}.management-account p{margin:8px 0;overflow-wrap:anywhere}.management-signout{justify-self:start}.management-content :focus-visible{outline:3px solid #70b69f;outline-offset:3px}@media(max-width:600px){.management-unit>button{width:100%}.management-business-form{padding:18px}}.provider-agenda,.provider-appointment-detail{display:grid;gap:20px}.status{display:inline-flex;width:fit-content;align-items:center;border-radius:999px;padding:5px 9px;background:#f1eee7;color:#695a3e;font-size:.64rem;font-weight:850}.status--reminder{background:#eee9fb;color:#62499a}.status--requested{background:#fff1d2;color:#795817}.status--confirmed,.status--completed{background:var(--brand-soft);color:var(--brand-strong)}.status--in_progress{background:#dff1fa;color:#17607c}.status--cancelled{background:#f8e3e3;color:var(--danger)}.pro-page-heading{padding:5px 2px}.pro-page-heading h1{margin:6px 0 7px;color:var(--ink);font-size:clamp(2rem,6vw,3rem);line-height:1.05;letter-spacing:-.045em}.pro-page-heading p{max-width:680px;margin:0;color:var(--muted);line-height:1.6}.request-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.request-metrics article{display:grid;min-height:122px;align-content:center;gap:3px;border:1px solid var(--line);border-radius:20px;padding:18px;background:#fff}.request-metrics span{color:var(--muted);font-size:.68rem;font-weight:750}.request-metrics strong{color:var(--brand-strong);font:800 2rem/1 Fredoka,Inter,sans-serif}.request-metrics small{color:var(--muted);font-size:.68rem}.incoming-requests,.provider-appointment-section{padding:20px}.incoming-requests>header,.provider-appointment-section>header{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:8px}.incoming-requests>header>div{display:flex;align-items:center;gap:11px}.incoming-requests h2,.provider-appointment-section h2{margin:0;font-size:1.08rem}.incoming-requests header p{margin:3px 0 0;color:var(--muted);font-size:.72rem}.incoming-requests header>b,.provider-appointment-section header>span{display:grid;min-width:31px;height:31px;place-items:center;border-radius:999px;background:var(--brand-soft);color:var(--brand);font-size:.75rem}.request-pulse{width:11px;height:11px;flex:0 0 auto;border:3px solid #c9eee0;border-radius:50%;background:#1aa77f;box-shadow:0 0 0 6px #1aa77f14}.provider-appointment-list{display:grid}.provider-appointment-list>button{display:grid;width:100%;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:10px;border:0;border-top:1px solid var(--line);padding:15px 0;background:transparent;color:var(--ink);text-align:left}.provider-appointment-list>button:first-child{border-top:0}.provider-appointment-list>button:hover .provider-appointment-main>strong{color:var(--brand)}.provider-appointment-date{display:grid;width:48px;height:54px;place-items:center;align-content:center;border-radius:15px;background:var(--surface-soft);color:var(--brand-strong)}.provider-appointment-date strong{font:800 1.2rem/1 Fredoka,Inter,sans-serif}.provider-appointment-date small{margin-top:3px;font-size:.59rem;font-weight:850;text-transform:uppercase}.provider-appointment-main{display:grid;min-width:0;gap:3px}.provider-appointment-main>small{color:var(--brand);font-size:.58rem;font-weight:850;letter-spacing:.04em;text-transform:uppercase}.provider-appointment-main>strong,.provider-appointment-main>span,.provider-appointment-main>em{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.provider-appointment-main>strong{font-size:.87rem}.provider-appointment-main>span,.provider-appointment-main>em{color:var(--muted);font-size:.69rem;font-style:normal}.provider-appointment-list .status{display:none}.provider-appointment-list>button>b{color:#8ba098;font-size:1.3rem}.provider-appointment-list--prominent>button{margin-top:9px;border:1px solid #d7e9df;border-radius:17px;padding:12px;background:#f5fbf7}.provider-agenda-empty{display:grid;min-height:180px;place-items:center;align-content:center;gap:6px;color:var(--muted);text-align:center}.provider-agenda-empty>svg{width:36px;height:36px;margin-bottom:4px;color:var(--brand)}.provider-agenda-empty strong{color:var(--ink)}.provider-agenda-empty p{max-width:380px;margin:0;font-size:.75rem;line-height:1.5}.provider-agenda>.pv-alert{display:flex;justify-content:space-between;gap:12px}.provider-agenda>.pv-alert button{border:0;background:transparent;color:inherit;font-weight:800;text-decoration:underline}.agenda-empty-access{display:grid;gap:10px}.agenda-empty-access h1{margin:0}.agenda-empty-access p{max-width:620px;margin:0;color:var(--muted);line-height:1.65}.pro-back-button{display:inline-flex;width:fit-content;min-height:40px;align-items:center;gap:7px;border:0;padding:0 3px;background:transparent;color:var(--brand);font-weight:800}.pro-back-button svg{width:18px}.provider-detail-hero{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px}.provider-detail-hero h1{margin:10px 0 4px;font-size:clamp(1.7rem,6vw,2.5rem)}.provider-detail-hero p{margin:0;color:var(--muted)}.provider-detail-hero time{display:grid;min-width:78px;justify-items:center;border-radius:20px;padding:12px;background:var(--brand-soft);color:var(--brand-strong)}.provider-detail-hero time strong{font:800 1.8rem/1 Fredoka,Inter,sans-serif}.provider-detail-hero time span{font-size:.7rem;font-weight:850;text-transform:uppercase}.provider-detail-hero time small{margin-top:5px;font-size:.72rem}.provider-detail-grid{display:grid;gap:15px}.provider-detail-grid>section{padding:22px}.provider-detail-grid h2{margin:0 0 17px;font-size:1.12rem}.provider-detail-grid dl{display:grid;margin:0}.provider-detail-grid dl>div{display:grid;gap:3px;border-top:1px solid var(--line);padding:12px 0}.provider-detail-grid dl>div:first-child{border-top:0;padding-top:0}.provider-detail-grid dt{color:var(--muted);font-size:.68rem}.provider-detail-grid dd{margin:0;font-size:.83rem;font-weight:700;overflow-wrap:anywhere}.provider-note{margin-top:8px;border-radius:12px;padding:13px;background:#f1f7f3}.provider-note strong{font-size:.73rem}.provider-note p{margin:5px 0 0;color:var(--muted);font-size:.76rem;line-height:1.5}.provider-notes{margin-top:15px}.provider-timeline{display:grid;margin:0;padding:0;list-style:none}.provider-timeline li{position:relative;display:grid;min-height:74px;grid-template-columns:18px minmax(0,1fr);gap:10px}.provider-timeline li:before{position:absolute;top:13px;bottom:-2px;left:5px;width:2px;background:#dcebe3;content:""}.provider-timeline li:last-child:before{display:none}.provider-timeline li>span{width:12px;height:12px;margin-top:3px;border:3px solid #d9efe5;border-radius:50%;background:var(--brand)}.provider-timeline li div{display:grid;align-content:start;gap:3px}.provider-timeline small,.provider-timeline p{margin:0;color:var(--muted);font-size:.69rem}.provider-timeline em{color:var(--danger);font-size:.69rem}.provider-detail-actions{position:sticky;z-index:5;bottom:78px;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;border:1px solid var(--line);border-radius:17px;padding:11px;background:#fffffff0;box-shadow:0 12px 35px #1543391a;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.provider-detail-actions button{min-height:43px}@media(min-width:640px){.request-metrics{grid-template-columns:repeat(2,minmax(0,240px))}.provider-appointment-list>button{grid-template-columns:52px minmax(0,1fr) auto 14px}.provider-appointment-list .status{display:inline-flex;justify-self:end}.provider-detail-grid{grid-template-columns:minmax(0,1fr) minmax(300px,.72fr)}}@media(min-width:980px){.incoming-requests,.provider-appointment-section{padding:26px}.provider-detail-actions{bottom:20px}}@media(max-width:520px){.pro-bottom-nav button{font-size:.58rem}.provider-detail-hero{padding:19px}.provider-detail-actions{justify-content:stretch}.provider-detail-actions button{flex:1 1 100%}}
