/* Identidad JC Kinesio: turquesa, verde y profundidad. */
:root{--ink:#103d41;--muted:#526f6d;--accent:#009caf;--lime:#80d44c;--line:#d0e5dc;--paper:#f2faf6}
body{background:radial-gradient(ellipse at 0 20%,#00acb411,transparent 48%),radial-gradient(ellipse at 100% 55%,#80d44c15,transparent 45%),#f5faf6}
header{position:relative;background:#fffffff2;padding-top:17px;padding-bottom:17px;border-bottom:1px solid #c8e3d9}
header:before{content:"";position:absolute;top:0;left:0;right:0;height:5px;background:linear-gradient(90deg,#009caf 10%,#80d44c 90%)}
.brand{letter-spacing:1.5px;font-size:21px}.brand img{width:62px;height:62px;box-shadow:0 3px 16px #007a7920}
.brand small{font-size:8px;letter-spacing:2px}nav a{padding:10px 0;border-bottom:1px solid #009caf55;font-weight:600}nav button{border-radius:50px}
main{padding-top:34px;max-width:1270px}.eyebrow{font-size:10px;letter-spacing:1.8px;font-weight:750}
h1,h2,h3{font-weight:750}button,.btn{border-radius:12px;transition:transform .22s ease,box-shadow .22s ease,background .22s ease}
.primary{position:relative;overflow:hidden;background:linear-gradient(110deg,#6ddac5,#b0ed72);color:#093b3f;box-shadow:0 6px 18px #007b781b;border:1px solid #b5eac6;font-weight:750}
.primary:hover{background:linear-gradient(110deg,#88e5d2,#b9f28d);box-shadow:0 9px 24px #007b7833;transform:translateY(-2px)}
.primary:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(105deg,transparent 20%,#ffffff55 50%,transparent 80%);transform:translateX(-130%)}
.primary:hover:after{transform:translateX(130%);transition:transform .7s}
.secondary{background:#e9f5ed;color:#205952;border:1px solid #c8e6d5}.secondary:hover{background:#d9efdf}
.live-dot{width:7px;height:7px;display:inline-block;background:#a4ed74;border-radius:100%;box-shadow:0 0 0 5px #a4ed7416;flex-shrink:0}
.portal-hero{isolation:isolate;position:relative;display:grid;grid-template-columns:1.35fr 1fr;gap:0;border-radius:29px 29px 0 0;padding:44px 44px 40px;min-height:390px;margin-bottom:0;background:radial-gradient(ellipse at 90% 20%,#70cf6677,transparent 42%),linear-gradient(114deg,#073f48 0%,#007b88 49%,#2ab6a3 78%,#84d450 120%);box-shadow:0 20px 44px #146d6924;overflow:hidden}
.portal-hero:before{content:"";position:absolute;inset:0;z-index:-1;background-image:linear-gradient(#ffffff04 1px,transparent 1px),linear-gradient(90deg,#ffffff04 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(90deg,transparent,#000);pointer-events:none}
.portal-hero:after{content:"";position:absolute;width:500px;height:500px;border:1px solid #a1eead23;border-radius:50%;right:-210px;top:-280px;left:auto;bottom:auto;background:none;pointer-events:none}
.hero-copy{position:relative;z-index:2;max-width:660px}.hero-kicker{display:flex;align-items:center;gap:12px}.hero-kicker .eyebrow{color:#c3eadd;font-size:9px;letter-spacing:2px}
.portal-hero p.greeting{margin:24px 0 7px;font-size:15px;font-weight:500;color:#d4eeea}
.portal-hero h1{font-size:clamp(38px,4.6vw,60px);font-weight:750;line-height:1.02;letter-spacing:-2.6px;margin:8px 0 16px;max-width:650px}
.portal-hero h1 em{font-style:normal;color:#b0ee74}.portal-hero #portalIntro{font-size:14px;line-height:1.65;max-width:455px;color:#cce9e3;margin:16px 0 23px}
.portal-hero .primary{padding:14px 22px;border-radius:50px;background:#b2ef7d;border-color:#baf493;color:#0d4949;gap:28px;box-shadow:0 8px 24px #00363d36;font-size:14px}
.portal-hero .primary:hover{background:#c8f799}.portal-hero .primary>span{font-size:19px;line-height:1}
.hero-art{position:relative;display:grid;place-items:center;min-height:325px;align-self:stretch;isolation:isolate}
.hero-art:before{content:"";position:absolute;width:285px;height:285px;border-radius:50%;background:radial-gradient(circle at 28% 24%,#c4f3a4 0%,#79d477 24%,#19aaa2 62%,#007781 90%);box-shadow:inset -14px -15px 37px #005d6d66,inset 5px 5px 14px #caffd260,0 25px 40px #003c4633;z-index:-1}
.hero-art:after{content:"";position:absolute;width:285px;height:285px;border-radius:50%;border:1px solid #d5ffd83d;box-shadow:0 0 70px #aeef7c26;z-index:-1}
.hero-seal{display:block;min-width:0;transform:rotate(-8deg);position:relative;z-index:2}
.hero-seal img{width:163px;height:163px;border:0;border-radius:50%;box-shadow:0 12px 30px #005a664f;display:block}
.orbit{position:absolute;left:50%;top:50%;width:390px;height:210px;border:1px solid #dcffdf75;border-radius:50%;transform:translate(-50%,-50%) rotate(-35deg);pointer-events:none}
.orbit-two{width:365px;height:180px;transform:translate(-50%,-50%) rotate(45deg);border-color:#cfffdf38}
.orbit-three{width:325px;height:325px;transform:translate(-50%,-50%) rotate(20deg);border-color:#cfffdf30}
.orbit-point{position:absolute;width:12px;height:12px;background:#c0f477;border-radius:50%;box-shadow:0 0 0 5px #adf08015}
.point-one{left:8%;top:67%}.point-two{right:9%;top:25%;width:7px;height:7px;background:#c0ffef}
.art-label{position:absolute;font-size:8px;letter-spacing:2.7px;color:#d3f5dc;top:7px;right:12px;transform:rotate(8deg)}
.art-caption{position:absolute;bottom:0;right:0;display:flex;align-items:center;gap:12px;background:#073d417f;color:#f2fff4;border:1px solid #c7f5d15c;padding:13px 17px;border-radius:14px;box-shadow:0 8px 25px #00545344;backdrop-filter:blur(15px);transform:rotate(-5deg)}
.art-caption>span:last-child{font-size:10px;line-height:1.7}.art-caption strong{display:block;font-size:12px;font-weight:600}.caption-mark{width:33px;height:33px;border-radius:50%;background:#a9e87a;color:#126965;display:grid;place-items:center;font-size:23px}
.brand-ribbon{position:relative;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:15px 35px;background:linear-gradient(95deg,#00a2b0,#40bea0,#91d95e);color:#063e3f;border-radius:0 0 23px 23px;margin-bottom:27px;box-shadow:0 15px 25px #156d6820;font-size:10px;font-weight:800;letter-spacing:2px;overflow:hidden}
.brand-ribbon i{font-style:normal;font-size:20px;line-height:1;color:#114945}
.overview{gap:17px;margin:0 0 23px}.overview>div,.overview>button{position:relative;isolation:isolate;overflow:hidden;padding:23px 25px;border:0;border-radius:19px;min-height:153px;box-shadow:0 6px 15px #123d3b0d;gap:8px}
.overview>div:first-child{background:linear-gradient(110deg,#e0f5f1,#b9eee4);color:#075c62}.overview>div:nth-child(2){background:linear-gradient(115deg,#e9f6d8,#d3eead)}.overview>button{background:linear-gradient(115deg,#104e54,#0c7c83);color:#fff}
.overview>div:after,.overview>button:after{content:"";position:absolute;width:170px;height:170px;right:-55px;bottom:-75px;border:1px solid #007b7915;border-radius:50%;box-shadow:0 0 0 18px #ffffff12,0 0 0 37px #ffffff10;z-index:-1}
.overview strong{font-size:41px;font-weight:650;letter-spacing:-2px}.overview span{font-size:12px;color:inherit}.overview small{font-size:11px;color:#3c6c65}.overview>button small{color:#c1e8dc}.overview .stat-art{position:absolute;right:22px;top:20px;width:36px;height:36px;border-radius:11px;background:#ffffff70;display:grid;place-items:center;font-size:25px;line-height:1;color:#165f5d;border:1px solid #ffffff70}
.overview>button .stat-art{background:#bcf28b;color:#0c5757;border:0}.overview>button>span:not(.stat-art){padding-right:35px}.overview>div>span:not(.stat-art){padding-right:35px}.overview>button .status-dot{background:#b2ee7f;box-shadow:0 0 0 3px #b2ee7f12}
.pending-alert{border-radius:14px;padding:16px 21px;border-color:#d0e0b7;background:#eef7df;border-left:4px solid #80bd3f}.pending-alert strong{color:#3a5b25}.pending-alert p{color:#5c7048}.pending-alert button{background:#dcedbb;border-color:#cdddac;color:#375423}.alert-icon{border-color:#7ca74c;color:#50722d}
.tabs{border:1px solid #d4e5db;background:#fff;border-radius:16px;padding:7px;box-shadow:0 6px 18px #153e3308;margin:27px 0 31px;gap:5px}.tabs button{border-radius:10px;padding:12px 18px;color:#3b6461;font-size:13px}.tabs .active{background:linear-gradient(110deg,#007b86,#059d9d);box-shadow:0 4px 9px #007b8624}.tabs .help-link{color:#2e7062}.tabs .count-badge{background:#c1ef89;color:#244b24}
.section-head{margin-bottom:20px}.section-head h2{font-size:32px;letter-spacing:-1.2px}.section-head .eyebrow{color:#0b8b88;font-size:10px}.section-head p{font-size:14px}.result-count{padding:8px 13px;border:1px solid #cee4d6;border-radius:50px;background:#edf7ee;color:#387364}
.filters{padding:0;margin-bottom:14px}.filters input,.filters select{padding-top:15px;padding-bottom:15px;border-radius:12px;border-color:#c8ded2;background:#fff;box-shadow:0 3px 8px #236b4c04}.search-wrap svg{top:19px;stroke:#0b9290}.filters select{font-size:14px}
.zone-chips{display:flex;align-items:center;flex-wrap:wrap;gap:9px;margin:0 0 25px}.zone-chip{display:inline-flex;gap:15px;background:transparent;color:#4f7469;border:1px solid #d2e5d8;border-radius:50px;padding:8px 14px;font-size:12px;font-weight:500;white-space:nowrap;box-shadow:none}.zone-chip>span{font-size:15px}.zone-chip.selected{background:#d7f1bf;border-color:#b9d99e;color:#31552d;font-weight:700}.zone-chip:hover{background:#e1f3d5;transform:none;box-shadow:none}
.cards{gap:23px}.card{border:1px solid #d9e6df;border-radius:20px;box-shadow:0 7px 18px #1544380a;transition:transform .24s,box-shadow .24s}.card:hover{transform:translateY(-5px);box-shadow:0 15px 30px #0c6a5b1c}.card-top{position:relative;isolation:isolate;min-height:136px;align-items:flex-start;padding:19px 20px;color:#eafff0;background:linear-gradient(115deg,#007985,#18b8b1);border:0;overflow:hidden}
.card-zone{position:relative;z-index:2;background:#00475173;border:1px solid #ffffff2b;padding:6px 10px;border-radius:50px;font-size:9px;letter-spacing:1px;max-width:85%}.card-symbol{position:absolute;z-index:2;right:17px;bottom:17px;width:31px;height:31px;border-radius:50%;border-color:#c4f7d08c;background:#ffffff10;color:inherit}.card-signature{position:absolute;bottom:23px;left:20px;font-size:8px;letter-spacing:2px;font-weight:600;opacity:.85}.motion-art{position:absolute;right:-5%;top:-16px;width:100%;height:180px;fill:none;stroke:#c9ffd7;stroke-width:1.3;opacity:.35;transform:rotate(-20deg);pointer-events:none}.motion-art circle{fill:#d4f792;stroke:none}
.tone-1 .card-top{background:linear-gradient(120deg,#a5df65,#5bbf73);color:#1b4f37}.tone-1 .card-zone{background:#e1facb85;border-color:#e5fdd04d}.tone-1 .motion-art{stroke:#1d755b;opacity:.27}.tone-1 .motion-art circle{fill:#135b4a}.tone-1 .card-symbol{border-color:#28664775;background:#deefcb3b}
.tone-2 .card-top{background:linear-gradient(120deg,#103e45,#17655e);color:#c4f192}.tone-2 .card-zone{background:#002f3673;border-color:#b5d5b836}.tone-2 .motion-art{stroke:#95d870;opacity:.5}
.card-body{padding:24px;display:flex;flex-direction:column;flex:1}.card{display:flex;flex-direction:column}.card h3{font-size:23px;font-weight:700;line-height:1.18;letter-spacing:-.7px;margin-bottom:9px}.card .objective{font-size:13px;line-height:1.6;margin-top:0;margin-bottom:14px;min-height:42px}.card .badge{align-self:flex-start;background:#e2f2e5;color:#397148;font-size:10px;padding:4px 9px;border-radius:5px}.card .badge.draft{background:#edf2e9;color:#64754b}.visibility{margin:7px 0 0;color:#627c71;font-size:11px}.routine-meta{margin-top:18px;font-size:11px;margin-bottom:9px;border-color:#e2eee5}.card-actions{margin-top:auto}.card .open-routine{background:#0c686c;color:#fff;border:1px solid #136c6b;border-radius:10px;min-height:42px}.card .open-routine:hover{background:#008d91}.card .secondary{font-size:11px;background:#f0f6ee;border-color:#e1edde}
.empty{position:relative;isolation:isolate;overflow:hidden;padding:50px 25px;border:1px solid #bcdfcf;background:radial-gradient(ellipse at 0 0,#74d6c62b,transparent 55%),radial-gradient(ellipse at 100% 100%,#b1e58040,transparent 60%),#fafffa;box-shadow:0 6px 20px #164b3406;border-radius:22px}
.empty:before,.empty:after{content:"";position:absolute;width:240px;height:240px;border:1px solid #40b89d26;border-radius:50%;z-index:-1;pointer-events:none}.empty:before{left:-85px;top:-125px;box-shadow:0 0 0 22px #60c7a00b,0 0 0 44px #60c7a008}.empty:after{right:-100px;bottom:-100px;box-shadow:0 0 0 22px #60c7a010,0 0 0 44px #60c7a008}.empty-symbol{background:linear-gradient(135deg,#00a5ae,#a6e578);color:#073e42;border:1px solid #bcf0c8;width:66px;height:66px;border-radius:22px;font-size:35px;box-shadow:0 8px 18px #069c8b1c;transform:rotate(-8deg);margin-bottom:22px}.empty h3{font-size:26px}.empty .primary{border-radius:50px}
#welcome{grid-template-columns:1.1fr 1fr;gap:34px;align-items:stretch;padding:0}#welcome .intro{position:relative;isolation:isolate;overflow:hidden;border-radius:27px;padding:44px 36px;background:radial-gradient(ellipse at 80% 0,#79dd844d,transparent 60%),linear-gradient(145deg,#07535c,#009eaa);color:#fff;display:flex;flex-direction:column;justify-content:center}
.intro:before{content:"";position:absolute;width:450px;height:450px;border-radius:50%;bottom:-340px;right:-130px;border:1px solid #c3f1c944;box-shadow:0 0 0 35px #ffffff06,0 0 0 75px #ffffff05;z-index:-1}
.intro .intro-label{font-size:9px;letter-spacing:1.2px;line-height:1.6;color:#c5eddf;display:flex;align-items:center;gap:10px}.intro h1{font-size:clamp(43px,4.9vw,65px);line-height:1.02;letter-spacing:-2.8px;margin:30px 0 20px}.intro h1 em{color:#b6ee7c}.intro>p{color:#d2efea;font-size:16px;line-height:1.7}.locations{margin:17px 0 0}.locations span{font-size:11px;color:#e2f8ed;border-color:#b8e9d54d;background:#003d4326;padding:7px 11px}.brand-note{display:flex;border-color:#b4e2d12e;padding-top:23px;margin-top:28px;gap:14px}.hero-logo{width:68px;box-shadow:0 5px 15px #00343b38}.brand-note p{color:#c7ece4;font-size:12px}.brand-note strong{color:#fff;font-size:12px}.brand-arrow{font-size:31px;margin-left:auto;color:#b8ef81}.specialties{display:flex;flex-wrap:wrap;gap:7px; margin-top:22px}.specialties span{font-size:9px;letter-spacing:.6px;color:#c9edd7}.specialties span+span:before{content:"/";padding-right:7px;color:#a6e17e}
.auth-panel{padding:35px;border:1px solid #cbe3d4;border-radius:27px;background:linear-gradient(130deg,#fff,#f9fff5);box-shadow:0 12px 40px #175d4310;border-top:5px solid #8acf5b}.auth-panel h2{font-size:32px;margin-top:9px}.auth-panel>p{font-size:14px}.auth-panel label{font-size:12px}.auth-panel input{font-size:14px;background:#fcfffc}.auth-panel .check{font-size:11px}.auth-panel .primary{background:linear-gradient(110deg,#0aa7ae,#96d85f);color:#073939}.auth-panel .fine{font-size:11px}.auth-actions button{font-size:13px}.auth-help-actions{display:flex;flex-wrap:wrap;gap:4px 18px;align-items:center}.auth-help-actions button{font-size:12px;min-height:40px;text-align:left}.auth-help-actions button:disabled{cursor:wait;opacity:.65}
dialog{border-top:5px solid #69c886;background:linear-gradient(130deg,#fff,#f8fff7);box-shadow:0 25px 90px #00414a66}dialog::backdrop{background:#073e44ba;backdrop-filter:blur(5px)}.upload-panel{border:1px dashed #46aaa1;background:linear-gradient(120deg,#dff4ec,#ebf7d7);border-radius:16px}.upload-panel .eyebrow{color:#377964}.save-bar{border-color:#cde5d4}.row{border-color:#cce1d4;box-shadow:0 4px 10px #153b2805;border-left:3px solid #a2d67b}.avatar{background:linear-gradient(135deg,#a2e1ce,#d1eea9);color:#16665e}.patient-status.waiting{color:#7a642d}.notice{background:#e1f4d8;border:1px solid #c6e5b6;color:#3c6b35}.notice.error{background:#fff0e7;border-color:#eccbb9;color:#873d21}
footer{position:relative;border-top:2px solid #70c795;max-width:1220px;margin:0 auto;padding:29px 8px;color:#1f5951}footer strong{font-size:15px;letter-spacing:1.6px}footer span{color:#5a7d6c}footer a{font-weight:600;color:#087d79}
@media(min-width:701px) and (max-width:1000px){.portal-hero{grid-template-columns:1.3fr .9fr;padding:32px;min-height:340px}.portal-hero h1{font-size:44px}.hero-art{min-height:280px}.hero-art:before,.hero-art:after{width:215px;height:215px}.hero-seal img{width:132px;height:132px}.orbit-one{width:280px;height:145px}.orbit-two{width:260px;height:150px}.orbit-three{width:250px;height:250px}.art-caption{right:0;padding:10px;bottom:10px}.art-label{font-size:7px;letter-spacing:1.5px}.overview>div,.overview>button{padding:20px;min-height:145px}.overview .stat-art{right:14px;top:15px;width:28px;height:28px;font-size:20px}.overview span{font-size:11px}#welcome{gap:22px}#welcome .intro{padding:30px 24px}.intro h1{font-size:47px}.auth-panel{padding:27px}.brand-note{flex-wrap:wrap}.brand-note .brand-arrow{display:none}}
@media(max-width:700px){header{padding:13px 17px}.brand{font-size:16px;gap:8px}.brand img{width:43px;height:43px}.brand small{font-size:7px;letter-spacing:.8px}nav a{font-size:10px;padding:4px 0;max-width:84px}nav button{font-size:11px}main{padding:20px 15px 35px}.portal-hero{display:block;min-height:0;padding:25px 23px 27px;border-radius:22px 22px 0 0;background:radial-gradient(ellipse at 100% 100%,#86d65a55,transparent 62%),linear-gradient(120deg,#074b55,#008d99)}.hero-copy{z-index:2}.hero-kicker{gap:9px}.hero-kicker .eyebrow{font-size:8px;letter-spacing:1.4px}.portal-hero p.greeting{font-size:12px;margin:23px 0 11px;max-width:82%}.portal-hero h1{font-size:clamp(33px,8.7vw,45px);line-height:1.04;letter-spacing:-1.5px;max-width:98%;margin-bottom:13px}.portal-hero #portalIntro{font-size:12px;line-height:1.65;max-width:90%;margin:13px 0 19px}.portal-hero .primary{font-size:12px;padding:12px 18px;gap:24px}.hero-art{position:absolute;inset:0;min-height:0;z-index:0;opacity:.5;pointer-events:none}.hero-art:before,.hero-art:after{display:none}.hero-seal{display:block;position:absolute;right:17px;top:21px;transform:rotate(-10deg);opacity:.8}.hero-seal img{width:36px;height:36px;box-shadow:none}.orbit{left:auto;right:-80px;top:80%;width:190px;height:190px;transform:rotate(-35deg);border-color:#b8efd929}.orbit-two{right:-110px;top:72%;width:260px;height:260px;transform:none;border-color:#b8efd91c}.orbit-three,.orbit-point,.art-caption,.art-label{display:none}.brand-ribbon{padding:11px 18px;border-radius:0 0 18px 18px;margin-bottom:18px;font-size:7px;letter-spacing:1.1px;gap:12px;justify-content:space-between}.brand-ribbon span:last-child,.brand-ribbon i:last-of-type{display:none}.brand-ribbon i{font-size:15px}.overview{gap:10px;margin-bottom:17px}.overview>div,.overview>button{padding:16px;min-height:118px;border-radius:15px;gap:5px}.overview strong{font-size:33px}.overview span{font-size:10px}.overview small{font-size:10px;line-height:1.4}.overview .stat-art{width:25px;height:25px;right:13px;top:13px;font-size:20px;border-radius:8px}.overview>div>span:not(.stat-art){padding-right:22px;font-size:10px;max-width:95%;min-height:28px}.overview>button{display:grid;grid-template-columns:1fr auto;gap:4px;min-height:77px;padding-left:57px}.overview>button>span:not(.stat-art){grid-column:1;padding:0;line-height:1.2;font-size:11px}.overview>button .stat-art{left:16px;top:25px;width:26px;height:26px}.overview>button>strong{grid-column:2;grid-row:1/3;font-size:29px}.overview>button small{grid-column:1;font-size:10px}.pending-alert{padding:13px 14px;gap:10px;margin-bottom:18px}.pending-alert strong{font-size:12px}.pending-alert p{font-size:11px}.pending-alert .alert-icon{width:24px;height:24px;font-size:12px}.pending-alert button{font-size:11px;margin-left:34px;padding:9px 13px}.tabs{padding:6px;gap:3px;border-radius:13px;margin:21px 0 25px}.tabs button{font-size:11px;padding:10px 11px}.tabs .help-link{padding:7px 10px;font-size:11px}.section-head{margin-bottom:17px}.section-head h2{font-size:27px;letter-spacing:-.9px}.section-head p{font-size:12px}.result-count{font-size:10px;padding:5px 9px}.filters{gap:9px}.filters input,.filters select{font-size:13px;padding-top:13px;padding-bottom:13px}.search-wrap svg{top:16px;width:17px;height:17px}.zone-chips{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin;padding-bottom:6px;gap:7px;margin-bottom:18px}.zone-chip{font-size:11px;padding:8px 12px;gap:15px;flex-shrink:0}.cards{gap:19px}.card{border-radius:18px}.card-top{min-height:125px;padding:17px 20px}.card h3{font-size:24px}.card-body{padding:23px}.card .objective{min-height:0;font-size:13px}.card .open-routine{font-size:13px;min-height:45px}.card .secondary{padding:11px;font-size:12px}.empty{padding:33px 22px}.empty h3{font-size:24px}.empty p{font-size:13px}.empty-symbol{width:56px;height:56px;font-size:30px;border-radius:18px}.empty .primary{font-size:12px}#welcome{display:flex;flex-direction:column;gap:19px}#welcome .intro{padding:29px 25px;border-radius:22px}.intro .intro-label{font-size:8px;letter-spacing:1.1px;max-width:100%}.intro h1{font-size:46px;line-height:1.02;letter-spacing:-2px;margin:24px 0 15px}.intro>p{font-size:14px;line-height:1.7}.locations{margin-top:12px}.locations span{font-size:10px;padding:6px 9px}.brand-note{display:flex;gap:11px;margin-top:24px;padding-top:17px}.hero-logo{width:49px}.brand-note p,.brand-note strong{font-size:10px;line-height:1.7}.brand-note .brand-arrow{font-size:25px}.specialties{margin-top:17px}.specialties span{font-size:8px}.auth-panel{padding:25px 23px;border-radius:21px}.auth-panel h2{font-size:29px}.auth-panel .eyebrow{font-size:9px}.auth-panel>p{font-size:13px}.auth-panel input{font-size:16px}dialog{padding:24px 21px;border-radius:19px}.upload-panel{padding:17px}.upload-panel .eyebrow{font-size:9px}.row{border-radius:12px}footer{margin:0 18px;padding:23px 0}footer strong{font-size:13px}.patient-controls input{font-size:16px}}
@media(prefers-reduced-motion:no-preference){.portal-hero,.auth-panel{animation:brand-arrive .55s ease both}.card{animation:brand-arrive .35s ease both}@keyframes brand-arrive{from{opacity:.3;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
