@font-face{font-family:Titillium;src:url('/fonts/titillium-regular.woff2') format('woff2');font-weight:400;font-display:swap}@font-face{font-family:Titillium;src:url('/fonts/titillium-semibold.woff2') format('woff2');font-weight:600;font-display:swap}@font-face{font-family:Titillium;src:url('/fonts/titillium-bold.woff2') format('woff2');font-weight:700;font-display:swap}
:root{--pink:#e80c70;--pink-soft:#fff0f6;--orange:#f6a33a;--ink:#302b30;--muted:#777176;--line:#e9e4e2;--canvas:#f7f5f3;--green:#277956;--green-soft:#eaf5ef;--shadow:0 12px 35px #35222d06}*{box-sizing:border-box}body{margin:0;background:var(--canvas);color:var(--ink);font-family:Titillium,Arial,sans-serif;font-size:16px}button,input,select,textarea{font:inherit}a{color:var(--pink)}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:wait;opacity:.55}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #e80c7070;outline-offset:3px}button,a{transition:background .15s,box-shadow .15s}h1,h2,h3,p{margin-top:0}h1{font-size:36px;line-height:1.15;letter-spacing:-.7px;font-weight:600;margin-bottom:12px}h2{font-size:22px;line-height:1.25;font-weight:600;margin-bottom:9px}h3{font-size:18px;font-weight:600}p{line-height:1.55}small,.muted{color:var(--muted)}svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.eyebrow{text-transform:uppercase;font-size:11px;letter-spacing:2.2px;font-weight:700;color:var(--pink);margin-bottom:12px}.btn{min-height:46px;border:0;border-radius:10px;background:var(--pink);color:white;display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:11px 19px;font-weight:600;text-decoration:none;box-shadow:0 5px 12px #e80c7010}.btn:hover{background:#cc0b62}.btn.secondary{background:white;border:1px solid var(--line);color:var(--ink);box-shadow:none}.btn.secondary:hover{background:#faf8f6}.btn.ghost{background:transparent;color:var(--pink);box-shadow:none}.full{width:100%}.field{display:grid;gap:7px;margin-bottom:16px;font-weight:600;font-size:14px}.field input,.field select,.field textarea,.search{width:100%;padding:12px 14px;background:#fff;border:1px solid #ddd6d6;border-radius:9px;color:var(--ink);min-height:47px}.field input::placeholder{color:#a09a9d}.field textarea{min-height:110px;resize:vertical}.field small{font-size:12px;font-weight:400}.check{display:flex;align-items:flex-start;gap:10px;font-size:13px;line-height:1.4;color:var(--muted);margin:16px 0 22px}.check input{accent-color:var(--pink);margin-top:3px}.auth{min-height:100svh;display:grid;grid-template-columns:1fr 1fr;background:#fff}.auth-story{background:#f7f0ee;position:relative;overflow:hidden;display:flex;flex-direction:column;padding:48px 64px;justify-content:space-between}.brand{width:173px;height:auto}.auth-art{max-width:430px;margin:80px auto;position:relative;z-index:1}.auth-art h1{font-size:clamp(42px,4.5vw,64px);font-weight:400;line-height:1.04}.auth-art h1 em{font-style:normal;color:var(--pink)}.auth-art p{max-width:345px;color:#776a70;margin-top:22px;font-size:18px}.auth-orbit{position:absolute;bottom:-240px;right:-180px;width:720px;height:720px;border:1px solid #efb5bd;border-radius:50%;pointer-events:none}.auth-orbit:before,.auth-orbit:after{content:'';position:absolute;inset:42px;border:1px solid #efb5bd;border-radius:50%}.auth-orbit:after{inset:85px}.story-foot{display:flex;align-items:center;gap:10px;color:#8b6e77;font-size:13px;z-index:1}.auth-content{padding:60px 8vw;display:flex;align-items:center;justify-content:center}.auth-form{width:100%;max-width:390px}.auth-form h2{font-size:30px}.auth-form>p{color:var(--muted);font-size:15px;margin-bottom:28px}.auth-switch{display:flex;gap:6px;justify-content:center;font-size:14px;margin-top:24px}.text-btn{border:0;background:transparent;color:var(--pink);padding:0;font-weight:600}.password-row{display:flex;align-items:center;justify-content:space-between}.password-row button{font-size:12px}.message{padding:13px 16px;border:1px solid #cde1d5;background:var(--green-soft);color:var(--green);border-radius:10px;margin-bottom:18px;font-size:14px}.message.error{color:#9d323c;background:#fff0f1;border-color:#f0ced2}.initial-loading{min-height:100svh;display:flex;align-items:center;justify-content:center;flex-direction:column}.sidebar{position:fixed;inset:0 auto 0 0;width:250px;background:white;border-right:1px solid var(--line);padding:30px 20px;display:flex;flex-direction:column;z-index:10}.sidebar .brand{width:163px;margin:0 18px 8px}.sidebar .brand-sub{font-size:10px;letter-spacing:2px;color:#9d9095;margin:0 18px 44px}.side-label{font-size:10px;letter-spacing:1.7px;color:#a49a9f;padding:0 15px;margin-bottom:12px}.nav{display:grid;gap:5px}.nav button{display:flex;align-items:center;gap:12px;border:0;background:none;border-radius:10px;padding:13px 15px;color:#7c7278;font-size:15px;text-align:left}.nav button:hover{background:#faf7f8}.nav button.active{background:var(--pink-soft);color:var(--pink);font-weight:700}.sidebar-bottom{margin-top:auto}.help-tile{border-radius:13px;background:#f8f6f4;padding:18px;margin-bottom:20px}.help-tile>svg{color:var(--pink);margin-bottom:7px}.help-tile strong,.help-tile small{display:block}.help-tile a{display:inline-flex;align-items:center;gap:8px;text-decoration:none;font-size:13px;margin-top:15px;font-weight:600}.logout{border:0;background:none;color:#8e8589;font-size:13px;display:flex;gap:10px;align-items:center;padding:10px 15px}.workspace{margin-left:250px;min-height:100svh}.topbar{height:82px;border-bottom:1px solid var(--line);background:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 42px}.topbar>span{font-size:14px;color:#93878e}.identity{display:flex;align-items:center;gap:12px;font-size:13px}.avatar{width:36px;height:36px;border-radius:50%;background:#ffe7f0;color:var(--pink);display:grid;place-items:center;font-weight:700}.identity strong,.identity small{display:block}.identity small{font-size:11px}.mobile-brand,.mobile-menu{display:none}.content{max-width:1240px;margin:auto;padding:40px 42px 70px}.page-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:28px}.page-heading p{color:var(--muted);font-size:15px;margin:0}.page-heading h1{margin-bottom:6px}.welcome{border:1px solid #f1dce1;border-radius:18px;padding:30px;background:linear-gradient(110deg,#fff0f5 0%,#fff8ee 100%);margin-bottom:26px;display:flex;align-items:center;justify-content:space-between;gap:24px;position:relative;overflow:hidden}.welcome h2{font-size:26px;font-weight:400}.welcome p{max-width:560px;color:#8a6c78;margin-bottom:0;font-size:15px}.welcome .welcome-icon{width:84px;height:84px;border:1px solid #efc4d4;border-radius:50%;display:grid;place-items:center;color:var(--pink);flex-shrink:0}.welcome-icon svg{width:36px;height:36px}.grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.card{padding:24px;background:white;border:1px solid var(--line);border-radius:15px;box-shadow:var(--shadow)}.stat-top{display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:13px}.stat-icon{width:35px;height:35px;display:grid;place-items:center;background:#f7f5f3;color:#9d898f;border-radius:10px}.stat-value{font-size:26px;display:block;margin:12px 0 3px;font-weight:600;line-height:1.2}.stat-value.text{font-size:19px}.card>small{font-size:12px}.section-title{display:flex;justify-content:space-between;align-items:center;margin:32px 0 16px;gap:12px}.section-title h2{font-size:20px;margin:0}.section-title button{border:0;background:none;color:var(--pink);font-size:13px;font-weight:600}.empty{text-align:center;padding:42px 24px}.empty>svg{width:34px;height:34px;color:#bca5ae;margin-bottom:15px}.empty h3{margin-bottom:8px}.empty p{max-width:390px;margin:0 auto 20px;color:var(--muted);font-size:14px}.badge{display:inline-flex;align-items:center;gap:5px;border-radius:6px;font-size:11px;font-weight:600;line-height:1.4;padding:5px 9px;background:#f3f0ee;color:#8e7f85}.badge.green{background:var(--green-soft);color:var(--green)}.badge.pink{background:var(--pink-soft);color:var(--pink)}.badge.gold{background:#f8f1dd;color:#967529}.card-top{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:18px}.order-items{display:grid;gap:10px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:17px 0;margin:16px 0}.order-item{display:flex;gap:12px;font-size:14px}.quantity{width:29px;height:29px;border-radius:7px;display:grid;place-items:center;background:#f7f4f1;color:#8c777f;flex-shrink:0}.order-item small{display:block;font-size:12px}.order-footer{display:flex;gap:10px;align-items:center;justify-content:space-between;flex-wrap:wrap}.order-footer small{font-size:11px}.order-footer .btn{font-size:12px;min-height:35px;padding:7px 10px}.alert{display:flex;gap:14px;align-items:flex-start;background:#fff7e9;border:1px solid #efdfbf;border-radius:12px;padding:20px;margin-bottom:24px}.alert svg{color:#b48b3e}.alert h3{font-size:16px;margin:0 0 5px}.alert p{color:#8d7a5c;font-size:14px;margin:0}.alert .btn{margin-top:14px;font-size:13px;background:white;border:1px solid #e3d6c0;color:#917644;box-shadow:none}.quick-action{display:flex;gap:16px;align-items:center;text-align:left;text-decoration:none;color:var(--ink);width:100%;border:1px solid var(--line);padding:20px;background:white;border-radius:13px}.quick-action svg{color:var(--pink)}.quick-action strong,.quick-action small{display:block}.quick-action strong{font-size:15px}.quick-action small{font-size:12px;margin-top:3px}.quick-action>span{flex:1}.quick-action:hover{border-color:#efb4ce}.document-row{display:flex;gap:14px;align-items:center;padding:18px 0;border-bottom:1px solid var(--line)}.document-row:last-child{border:0}.document-row>svg{color:#ab969f}.document-row .doc-copy{flex:1;min-width:0}.doc-copy strong,.doc-copy small{display:block;overflow-wrap:anywhere}.doc-copy strong{font-size:14px}.doc-copy small{font-size:12px;margin-top:4px}.document-row a{color:#9c838e}.form-columns{display:grid;grid-template-columns:1fr 1fr;gap:18px}.upload-drop{border:1px dashed #d9c4cc;border-radius:12px;padding:24px;background:#fdf9fb;text-align:center;margin:15px 0 20px}.upload-drop input{max-width:100%;display:block;margin:12px auto 0;font-size:13px}.upload-drop>svg{color:var(--pink)}.upload-drop small{display:block;margin-top:7px;font-size:12px}.locked-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;user-select:none}.placeholder-card{height:265px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px;filter:blur(5px);opacity:.5}.placeholder-image{height:130px;border-radius:13px;background:#eee5e9;margin-bottom:22px}.placeholder-line{height:12px;border-radius:5px;background:#e1d5da;margin:10px 0}.placeholder-line.short{width:65%}.catalog-locked{position:relative}.lock-message{max-width:400px;background:#fff;border:1px solid #e9d9e1;border-radius:18px;box-shadow:0 15px 60px #5d304d18;padding:32px;text-align:center;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:calc(100% - 30px)}.lock-message .lock-icon{width:48px;height:48px;border-radius:50%;background:var(--pink-soft);color:var(--pink);display:grid;place-items:center;margin:0 auto 15px}.lock-message p{font-size:14px;color:var(--muted)}.catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.product{padding:20px}.product-image{height:160px;display:grid;place-items:center;background:#faf8f6;border-radius:12px;margin-bottom:18px}.product-image img{max-width:90%;max-height:140px;object-fit:contain}.product-image svg{width:40px;height:40px;color:#c3a0ae}.product h3{font-size:15px;line-height:1.4;margin:10px 0}.product small{font-size:11px}.product .field{font-size:12px;margin:10px 0}.product .field select{padding:7px;min-height:36px}.product .btn{font-size:13px;min-height:38px;margin-top:8px}.toolbar{display:flex;gap:12px;margin-bottom:22px;align-items:center}.search{max-width:400px;font-size:14px}.toolbar .btn{margin-left:auto;font-size:13px}.cart-row{border-bottom:1px solid var(--line);padding:16px 0;display:flex;align-items:center;gap:12px}.cart-row>div{flex:1}.cart-row strong{font-size:14px;display:block}.cart-row small{font-size:12px}.cart-row input{width:65px;padding:8px;border:1px solid var(--line);border-radius:7px}.cart-row button{border:0;background:none;color:#a68995}.loyalty-card{padding:30px;background:#332b32;color:#fff;position:relative;overflow:hidden;border-radius:18px}.loyalty-card .eyebrow{color:#efb2ca}.loyalty-card h2{font-size:32px;font-weight:400}.loyalty-card p{color:#c2b0ba;font-size:14px;max-width:440px}.loyalty-card .number{font-size:47px;font-weight:400;line-height:1.2}.loyalty-card small{color:#c2b0ba}.tier-list{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:25px}.tier{border:1px solid var(--line);border-radius:13px;padding:22px;background:white}.tier.gold{background:#fffcf1;border-color:#eadcb7}.tier.platinum{background:#f4f2f6;border-color:#dbd5e0}.tier small{font-size:12px}.tier strong{font-size:19px;display:block;margin:10px 0 6px}.tier svg{color:#b59a6b}.progress{height:7px;background:#62515e;border-radius:7px;margin:18px 0 8px;overflow:hidden}.progress span{display:block;height:100%;background:linear-gradient(90deg,#ff2386,#f5b541)}.profile-info{display:grid;grid-template-columns:1fr 1fr;gap:20px}.profile-info dt{font-size:12px;color:var(--muted)}.profile-info dd{margin:5px 0 0;font-size:15px;overflow-wrap:anywhere}.support-card{display:flex;gap:22px;align-items:center}.support-avatar{width:68px;height:68px;display:grid;place-items:center;background:var(--pink-soft);color:var(--pink);border-radius:18px;flex-shrink:0}.support-avatar svg{width:28px;height:28px}.support-card .btn{margin-top:12px}.faq details{padding:18px 0;border-bottom:1px solid var(--line);font-size:14px}.faq summary{cursor:pointer;font-weight:600}.faq p{margin:12px 0 0;color:var(--muted)}.legal{max-width:680px;margin:48px auto;padding:24px}.legal p{color:var(--muted);font-size:15px}.mobile-nav{display:none}#toast{position:fixed;bottom:28px;left:50%;transform:translateX(-50%);max-width:min(90%,550px);padding:14px 20px;border-radius:11px;background:#332b32;color:white;z-index:100;box-shadow:0 8px 24px #0002;font-size:14px;display:none}#toast.visible{display:block}.row-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
@media(min-width:1500px){.auth-content{padding:70px 10vw}}@media(max-width:1100px){.sidebar{width:220px;padding-left:14px;padding-right:14px}.workspace{margin-left:220px}.content{padding:30px 26px 60px}.topbar{padding:0 26px}.grid-3,.catalog-grid{grid-template-columns:repeat(2,1fr)}.grid-3>.card:last-child{grid-column:1/-1}.auth-story{padding:38px}.auth-content{padding:40px}.auth-art h1{font-size:48px}}@media(max-width:760px){h1{font-size:29px}.auth{grid-template-columns:1fr}.auth-story{padding:28px 24px 32px;min-height:auto}.auth-story .brand{width:145px}.auth-art{margin:35px 0 0;max-width:100%}.auth-art h1{font-size:36px;max-width:330px;margin-bottom:0}.auth-art p,.story-foot{display:none}.auth-orbit{height:400px;width:400px;bottom:-310px}.auth-content{padding:34px 24px}.auth-form{max-width:450px}.auth-form h2{font-size:26px}.auth-form>p{margin-bottom:22px}.sidebar{display:none}.workspace{margin-left:0}.topbar{height:72px;padding:0 22px}.topbar>span{display:none}.mobile-brand{display:block;width:130px}.identity .identity-copy{display:none}.content{padding:28px 20px 100px}.page-heading{margin-bottom:22px;align-items:flex-start}.page-heading>.badge{display:none}.page-heading p{font-size:14px}.welcome{padding:23px;margin-bottom:18px;gap:12px}.welcome h2{font-size:23px}.welcome p{font-size:13px}.welcome .welcome-icon{width:50px;height:50px}.welcome-icon svg{width:23px;height:23px}.grid-3{grid-template-columns:1fr 1fr;gap:12px}.card{padding:20px}.grid-3>.card:last-child{grid-column:1/-1}.stat-value{font-size:23px}.stat-top{font-size:12px}.stat-icon{width:27px;height:27px}.stat-icon svg{width:16px;height:16px}.grid-2{grid-template-columns:1fr;gap:16px}.section-title{margin-top:26px}.section-title h2{font-size:19px}.mobile-nav{display:flex;justify-content:space-around;position:fixed;bottom:0;left:0;right:0;background:#fffffff5;backdrop-filter:blur(12px);border-top:1px solid var(--line);z-index:20;padding:9px 5px max(9px,env(safe-area-inset-bottom))}.mobile-nav button{display:flex;flex-direction:column;align-items:center;gap:4px;flex:1;border:0;background:none;color:#97868f;font-size:10px;padding:4px 0}.mobile-nav button.active{color:var(--pink);font-weight:700}.mobile-nav svg{width:20px;height:20px}.form-columns,.profile-info{grid-template-columns:1fr}.locked-grid{grid-template-columns:1fr 1fr;gap:12px}.placeholder-card{height:220px}.locked-grid .placeholder-card:nth-child(n+5){display:none}.lock-message{padding:25px}.catalog-grid{grid-template-columns:1fr 1fr;gap:12px}.product{padding:14px}.product-image{height:125px}.product-image img{max-height:110px}.product h3{font-size:13px}.tier-list{grid-template-columns:1fr;gap:12px}.tier{display:grid;grid-template-columns:30px 1fr;gap:0 10px;padding:18px}.tier svg{grid-row:span 3}.tier strong{font-size:17px;margin:0 0 4px}.tier small{grid-column:2}.support-card{align-items:flex-start;gap:15px}.support-avatar{width:48px;height:48px}.toolbar{flex-wrap:wrap}.toolbar .search{max-width:none;flex:1;min-width:150px}.toolbar .btn{padding:10px;font-size:12px}.order-footer{align-items:flex-start}.order-footer .btn{font-size:11px}.loyalty-card{padding:24px}.auth-switch{flex-wrap:wrap}#toast{bottom:90px}}@media(max-width:380px){.catalog-grid{grid-template-columns:1fr}.grid-3{grid-template-columns:1fr}.grid-3>.card:last-child{grid-column:auto}.welcome-icon{display:none!important}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

.order-timeline{font-size:13px;margin:14px 0 20px;color:var(--muted)}.order-timeline summary{cursor:pointer;font-weight:600;color:var(--ink)}.order-timeline ol{padding-left:20px}.order-timeline li{padding:7px 0}.order-timeline small{display:block}.file-picker{display:block;position:relative;border:1px solid #dfccd4;border-radius:8px;padding:9px 12px;background:#fff;font-size:13px;color:var(--pink);margin-top:14px;cursor:pointer;overflow-wrap:anywhere}.file-picker input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}

/* CaliMed identity: pink and orange highlights with readable surfaces. */
:root{--pink:#d80d69;--pink-soft:#ffedf5;--pink-bright:#ff0f7b;--orange:#f89b29;--orange-soft:#fff2dc;--canvas:#fff9f6;--line:#eddee4;--muted:#786670}
body{background:radial-gradient(ellipse at 100% 0,#fff0e3 0,transparent 48%),var(--canvas)}
.sidebar{background:linear-gradient(180deg,#fff 58%,#fff4f8);border-right-color:#f0dce5}
.sidebar:before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#ff0f7b,#ff685b 60%,#f89b29)}
.sidebar .brand-sub,.side-label{color:#866170}.nav button>svg{color:#ae3f71}
.nav button.active{background:#ffe9f3;color:#bd0c5d;box-shadow:inset 3px 0 #e80c70}
.nav button:hover{background:#fff1f7}.nav button.active>svg{color:#d80d69}
.topbar{position:relative;border-bottom-color:#efdae3;background:linear-gradient(110deg,#fff 55%,#fff5ec)}
.topbar:after{content:'';position:absolute;bottom:0;left:0;right:0;height:2px;background:linear-gradient(90deg,#f59fc0,#ffd09a)}
.avatar{background:linear-gradient(135deg,#ffd6e9,#ffedcb);color:#aa0a51;border:1px solid #f5c8d9}
.btn{background:linear-gradient(100deg,#d80d69,#bd0b5b);box-shadow:0 7px 18px #d80d6918}
.btn:hover{background:linear-gradient(100deg,#c50b60,#a70a51)}.btn.secondary,.btn.ghost{box-shadow:none}
.btn.secondary:hover{background:#fff2f7;border-color:#eab9ce}.btn.ghost:hover{background:#fff1f7}
.welcome{background:linear-gradient(112deg,#ffe3ef 0%,#ffedf1 48%,#ffefd5 100%);border-color:#f2bbd1}
.welcome .eyebrow{color:#b20a55}.welcome p{color:#80505f}.welcome .welcome-icon{background:#ffffff8f;border:1px solid #efacc7;box-shadow:0 8px 25px #d80d6910}
.grid-3>.card{border-top:3px solid #ec6c9f;background:linear-gradient(180deg,#fff0f6,#fff 70%)}
.grid-3>.card:nth-child(2){border-top-color:#eda249;background:linear-gradient(180deg,#fff5e7,#fff 70%)}
.grid-3>.card:nth-child(3){border-top-color:#bb8ab1;background:linear-gradient(180deg,#f9eff8,#fff 70%)}
.stat-icon{background:#ffe1ee;color:#ba0d5d}.grid-3>.card:nth-child(2) .stat-icon{background:#ffe7c2;color:#9c5d13}.grid-3>.card:nth-child(3) .stat-icon{background:#eddbef;color:#81508c}
.help-tile{background:linear-gradient(140deg,#ffedf5,#fff3e1);border:1px solid #f0d3dc}
.quick-action{border-color:#f0dce5;background:linear-gradient(115deg,#fff,#fff6fa)}
.quick-action:nth-child(2n){background:linear-gradient(115deg,#fff,#fff5e7);border-color:#f0dfc7}
.quick-action:nth-child(2n)>svg:first-child{color:#ad681d}.quick-action:hover{box-shadow:0 8px 22px #c3296a0b;border-color:#e9a6c3}
.loyalty-card{background:linear-gradient(112deg,#8f174a 0%,#b90f5c 62%,#ca246c 100%);border:1px solid #b60c59;box-shadow:0 15px 38px #a413501b;padding:32px;isolation:isolate}
.loyalty-card:before{content:'';position:absolute;width:340px;height:340px;border:1px solid #ffbe764a;border-radius:50%;top:-115px;right:-75px;z-index:0;pointer-events:none}
.loyalty-card:after{content:'';position:absolute;width:260px;height:260px;border:1px solid #ffd09b45;border-radius:50%;top:-75px;right:-36px;z-index:0;pointer-events:none}
.loyalty-card>*{position:relative;z-index:1}.loyalty-card .eyebrow{color:#ffd4e7}.loyalty-card h2{color:white;max-width:calc(100% - 160px)}
.loyalty-card p,.loyalty-card small{color:#fff0f6;max-width:calc(100% - 170px)}
.loyalty-card .number{color:white}.loyalty-card .btn{background:#fff3e5;color:#8b1848;border:1px solid #ffd1a3;box-shadow:0 6px 20px #63113118}
.loyalty-card .btn:hover{background:#ffe7c9}.loyalty-card .badge.gold{background:#ffe1a3;color:#74470b;border:1px solid #ffc775}
.benefit-emblem{position:absolute;top:35px;right:42px;width:120px;height:120px;border-radius:50%;border:1px solid #ffd294a3;display:grid;place-items:center;background:linear-gradient(145deg,#ffb36c32,#ffffff08);box-shadow:inset 0 0 0 10px #ffbe6e0c;color:#ffe0ab}
.benefit-emblem svg{width:45px;height:45px;stroke-width:1.15}.progress{background:#ffffff2b}.progress span{background:linear-gradient(90deg,#ffadd0,#ffcc78)}
.benefit-redemption{border-top:3px solid #e8629b;background:linear-gradient(150deg,#fff,#fff7fa)}
.tier{border-top:3px solid #e98cb5;background:linear-gradient(145deg,#fff0f6,#fff);box-shadow:0 8px 24px #4f304b05}
.tier>svg{color:#b52a66}.tier strong{color:#8d2756}.tier.gold{border-color:#ecd09b;border-top-color:#daa344;background:linear-gradient(145deg,#fff0cd,#fffaf0)}
.tier.gold strong,.tier.gold>svg{color:#89621d}.tier.platinum{border-color:#d6c5e0;border-top-color:#9a79ae;background:linear-gradient(145deg,#eee6f7,#faf7fe)}
.tier.platinum strong,.tier.platinum>svg{color:#735184}.tier small{color:#746570;line-height:1.6}
.auth-story{background:linear-gradient(145deg,#ffe6f0 0%,#fff0e4 85%)}.auth-orbit,.auth-orbit:before,.auth-orbit:after{border-color:#e999b347}
.auth-art p{color:#805768}.story-foot{color:#8f5f74}.support-avatar{background:linear-gradient(135deg,#ffdfed,#ffefcf);color:#be0a5b}
.upload-drop{background:linear-gradient(140deg,#fff1f8,#fff8ed);border-color:#e6a9c4}.product-image{background:linear-gradient(135deg,#fff1f7,#fff6e7)}
@media(max-width:1100px){.benefit-emblem{right:28px;width:102px;height:102px}.loyalty-card h2{max-width:calc(100% - 120px)}.loyalty-card p,.loyalty-card small{max-width:calc(100% - 130px)}}
@media(max-width:760px){.loyalty-card{padding:26px 24px}.benefit-emblem{display:none}.loyalty-card h2,.loyalty-card p,.loyalty-card small{max-width:100%}.loyalty-card:before{right:-180px;opacity:.6}.loyalty-card:after{right:-140px;opacity:.6}.topbar{background:linear-gradient(110deg,#fff,#fff3eb)}.mobile-nav button.active{color:#bd0c5d}.mobile-nav button.active svg{filter:drop-shadow(0 2px 4px #df428c20)}}

.topbar>span{color:#7f6975}

/* Keep patient navigation and WhatsApp reachable in short or zoomed windows. */
.sidebar{overflow-y:auto;overscroll-behavior-y:contain;scrollbar-width:thin;scrollbar-color:#e5b9ce transparent}
.sidebar>*{flex-shrink:0}.sidebar>a{display:block;line-height:0}.sidebar-bottom{padding-top:20px}
.sidebar .help-tile{display:grid;grid-template-columns:22px minmax(0,1fr) 16px;align-items:center;gap:10px;padding:16px 13px;color:#a90c52;text-decoration:none;line-height:1.3;transition:border-color .15s,box-shadow .15s}
.sidebar .help-tile>svg{width:22px;height:22px;margin:0;color:#cd0b63}.sidebar .help-tile>svg:last-child{width:16px;height:16px}
.sidebar .help-tile strong{display:block;font-size:14px;line-height:1.3}.sidebar .help-tile small{display:block;margin-top:4px;font-size:11px;line-height:1.3;color:#825768}
.sidebar .help-tile:hover{border-color:#e693b6;box-shadow:0 5px 15px #c3296a12}.sidebar .help-tile:focus-visible{outline:2px solid #c60c60;outline-offset:3px}
@media(min-width:761px) and (max-height:760px){
 .sidebar{padding-top:14px;padding-bottom:14px}.sidebar .brand{width:140px;margin:0 12px 4px}
 .sidebar .brand-sub{margin:0 12px 16px;font-size:9px;line-height:1.3}.sidebar .side-label{padding:0 12px;margin-bottom:6px;font-size:9px;line-height:1.3}
 .sidebar .nav{gap:3px}.sidebar .nav button{padding:7px 12px;font-size:14px;line-height:20px}.sidebar .nav button>svg{width:20px;height:20px}
 .sidebar-bottom{padding-top:8px}.sidebar .help-tile{padding:12px 10px;gap:8px;margin-bottom:8px}.sidebar .help-tile strong{font-size:13px}.sidebar .help-tile small{margin-top:3px}
 .sidebar .logout{padding:7px 12px;font-size:12px;line-height:20px}.sidebar .logout>svg{width:20px;height:20px}
}
/* Patient catalog: category-first browsing. */
.catalog-intro{margin:28px 0 22px}.catalog-intro h2{font-size:27px;margin-bottom:8px}.catalog-intro p{font-size:14px;margin:0}.category-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.category-card{display:block;text-align:left;border:1px solid #ecdbe1;border-radius:19px;overflow:hidden;padding:0;background:#fff;box-shadow:0 8px 26px #55233506;color:var(--ink)}.category-card:hover{border-color:#e99ebf;box-shadow:0 12px 30px #9c355715}.category-photo{aspect-ratio:1.65;overflow:hidden;background:#fff0f4}.category-photo img{width:100%;height:100%;object-fit:cover;transition:transform .25s}.category-card:hover .category-photo img{transform:scale(1.025)}.category-copy{padding:21px 24px;display:flex;justify-content:space-between;align-items:center;gap:16px}.category-copy strong{display:block;font-size:23px;font-weight:600}.category-copy small{display:block;margin-top:3px;font-size:13px}.category-arrow{width:40px;height:40px;display:grid;place-items:center;background:#fff0f6;border:1px solid #fad1e1;border-radius:50%;color:var(--pink)}.category-fallback{display:grid;place-items:center;height:100%;background:linear-gradient(130deg,#ffe5ef,#fff1d9);color:var(--pink)}.category-fallback svg{width:66px;height:66px}.category-breadcrumb{display:flex;align-items:center;gap:13px;font-size:14px;margin-bottom:24px}.category-breadcrumb>span{color:#c8b5bf}.catalog-caption{font-size:12px;color:#877880;line-height:1.6;margin:18px 0 0}.catalog-section{margin-top:26px}.catalog-section small{font-size:12px}.category-card .category-photo img{display:block}
/* Clube CALI: category achievements and rotating monthly selections. */
.club-intro{max-width:790px;font-size:15px;margin:-7px 0 22px}.club-bonus-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.club-bonus{padding:27px;border-radius:17px;border:1px solid #ead8ae;background:linear-gradient(125deg,#fff9e9,#fffdf8);display:flex;flex-direction:column}.club-bonus.platinum{border-color:#d3c2dc;background:linear-gradient(120deg,#f5edf8,#fff9fc)}.club-bonus-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.club-bonus-top>svg{width:28px;height:28px;color:#a16c15}.club-bonus.platinum .club-bonus-top>svg{color:#825190}.club-bonus h3{font-size:25px;margin-bottom:9px}.club-bonus>p{color:#796c72;font-size:14px;flex:1}.club-bonus>.btn{align-self:flex-start}.club-bonus-note{font-size:13px;line-height:1.5;color:#82757b;display:flex;align-items:center;gap:7px}.club-bonus-note svg{width:15px;height:15px}.club-claim-summary{background:#ffffffa6;border:1px solid #ffffff;border-radius:11px;padding:17px}.club-claim-summary>strong,.club-claim-summary>small{display:block}.club-claim-summary>small{font-size:12px;margin-top:5px}.club-claim-summary p{font-size:13px;margin:10px 0}.club-claim-summary details{margin-top:12px}.club-claim-summary summary,.club-campaign summary{font-size:12px;cursor:pointer;color:#8d3960}.club-selection{margin-top:22px;border-color:#edbfd2;scroll-margin-top:22px}.club-selection .card-top{align-items:flex-start}.club-choice-tabs{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:22px 0}.club-choice-tabs button{border:1px solid #e6d8de;border-radius:12px;background:#fff;padding:18px;text-align:left;color:#61505a;font-weight:600}.club-choice-tabs button svg{color:var(--pink);margin-right:8px;vertical-align:middle}.club-choice-tabs button small{display:block;font-size:12px;margin-top:7px;font-weight:400}.club-choice-tabs button.selected{background:#fff0f7;border:2px solid #e80c70;padding:17px;color:#ae0c55}.club-gift-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:20px 0 0}.club-gift-option{display:block;position:relative;border:1px solid #e8dfe4;border-radius:12px;overflow:hidden;cursor:pointer;background:#fff}.club-gift-option.selected{border:2px solid #df116c}.club-gift-option>input{position:absolute;top:10px;left:10px;accent-color:var(--pink);width:17px;height:17px}.club-gift-option img{width:100%;aspect-ratio:1.15;object-fit:contain;background:#f8f5f3;display:block}.club-gift-option>span{display:block;padding:11px}.club-gift-option strong,.club-gift-option small{display:block}.club-gift-option strong{font-size:13px}.club-gift-option small{font-size:10px;margin-bottom:4px}.club-selection form>.grid-3{margin:24px 0 10px}.club-selection form>.grid-2{gap:0 18px}.club-selection h3{margin-top:20px}.club-terms{border-radius:11px;padding:18px;background:#faf6f8;margin-top:20px;font-size:13px}.club-terms p{white-space:pre-line;margin:8px 0 0;color:#776971}.club-credit{padding:26px;border:1px solid #f1c1d5;border-radius:12px;background:linear-gradient(120deg,#fff0f6,#fff7e9);margin:20px 0}.club-credit>small,.club-credit>strong{display:block}.club-credit>small{letter-spacing:1px;font-size:10px}.club-credit>strong{color:#be0c5c;font-size:36px;margin:4px 0 7px;font-weight:600}.club-credit>p{max-width:600px;margin:0;color:#7b606e;font-size:14px}.club-campaign-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.club-campaign{padding:0;overflow:hidden;display:flex;flex-direction:column}.club-campaign>img{width:100%;aspect-ratio:1.8;object-fit:contain;background:#faf5f3}.club-campaign-copy{padding:24px;display:flex;flex:1;flex-direction:column;align-items:flex-start}.club-campaign-copy h3{font-size:23px;margin:15px 0 8px}.club-campaign-copy>p{font-size:14px;color:#7f6d77}.club-campaign-copy>small{font-size:12px}.club-campaign-copy details{margin:14px 0}.club-campaign-copy details p{font-size:13px;white-space:pre-line}.club-campaign-copy>.btn{font-size:13px;margin-top:auto}.club-month-empty{border:1px dashed #e7bbd0;background:linear-gradient(120deg,#fff5f9,#fff9f0);padding:28px;border-radius:15px;display:flex;gap:20px;align-items:center}.club-month-icon{width:58px;height:58px;background:#ffe5f0;border-radius:50%;display:grid;place-items:center;flex-shrink:0;color:var(--pink)}.club-month-icon svg{width:26px;height:26px}.club-month-empty h3{margin-bottom:6px;font-size:21px}.club-month-empty p{margin:0;max-width:620px;color:#8b727e;font-size:14px}.club-coming{padding:25px;margin-top:18px;background:#352b35;border:1px solid #55404f;border-radius:14px;color:#fff}.club-coming .eyebrow{color:#ffc0dc}.club-coming>div:not(.eyebrow){padding:10px 0}.club-coming strong,.club-coming small{display:block}.club-coming small{color:#d4c0cc;font-size:12px;margin-top:5px}
@media(max-width:760px){.category-grid{gap:15px}.category-photo{aspect-ratio:1.2}.category-copy{padding:15px;gap:7px}.category-copy strong{font-size:20px}.category-copy small{font-size:11px}.category-arrow{width:29px;height:29px}.category-arrow svg{width:16px;height:16px}.catalog-intro h2{font-size:24px}.catalog-intro{margin-top:22px}.club-bonus-grid,.club-campaign-grid{grid-template-columns:1fr;gap:15px}.club-bonus{padding:23px}.club-choice-tabs{gap:9px}.club-choice-tabs button{font-size:14px;padding:14px}.club-choice-tabs button.selected{padding:13px}.club-choice-tabs button svg{display:block;margin:0 0 8px}.club-gift-grid{grid-template-columns:1fr 1fr}.club-month-empty{align-items:flex-start;padding:23px;gap:14px}.club-month-icon{width:40px;height:40px}.club-month-icon svg{width:21px;height:21px}.club-month-empty h3{font-size:19px}.club-selection .grid-3{grid-template-columns:1fr}.club-selection .grid-3>.field:last-child{grid-column:auto}.club-campaign-copy{padding:21px}}
@media(max-width:380px){.category-grid{grid-template-columns:1fr}.category-photo{aspect-ratio:1.65}.club-choice-tabs{grid-template-columns:1fr}}

/* Patient notification center and privacy-first Web Push controls. */
.topbar-actions{display:flex;align-items:center;gap:18px}.notification-bell{position:relative;width:42px;height:42px;display:grid;place-items:center;border:1px solid #ead8e0;border-radius:50%;background:#fff8fb;color:#b40c58}.notification-bell:hover{background:#ffeef5}.notification-bell svg{width:20px;height:20px}.notification-bell>span{position:absolute;right:-3px;top:-4px;min-width:19px;height:19px;padding:0 4px;border-radius:10px;background:#d70c68;color:white;border:2px solid white;display:grid;place-items:center;font-size:9px;font-weight:700}.push-preference{display:flex;align-items:center;gap:18px;margin-bottom:24px;border-top:3px solid #e85a96;background:linear-gradient(120deg,#fff5f9,#fffaf1)}.push-preference-icon{width:54px;height:54px;display:grid;place-items:center;flex-shrink:0;border-radius:50%;background:#ffe0ed;color:#c70d61}.push-preference-icon svg{width:25px;height:25px}.push-preference>div{flex:1}.push-preference h2{font-size:20px;margin:0 0 5px}.push-preference p{font-size:14px;color:#75656e;margin:0 0 5px}.push-preference small{display:block;font-size:11px;color:#95848c;line-height:1.5}.push-preference>.btn{white-space:nowrap;font-size:12px}.notification-toolbar{display:flex;justify-content:flex-end;margin:-8px 0 14px}.notification-clear{display:inline-flex;align-items:center;gap:7px;color:#9f2058}.notification-clear svg{width:15px;height:15px}.notification-center{display:grid;gap:14px}.notification-card{display:grid;grid-template-columns:110px minmax(0,1fr);gap:20px;align-items:center;padding:20px;border:1px solid #eadfe3;background:white;border-radius:15px;box-shadow:var(--shadow)}.notification-card.unread{border-left:4px solid #dc0c6b;background:linear-gradient(110deg,#fff5f9,#fff)}.notification-card>img{width:110px;height:90px;object-fit:contain;border-radius:10px;background:#faf5f3}.notification-card-icon{width:54px;height:54px;display:grid;place-items:center;border-radius:50%;background:#ffe7f1;color:#ca0c61;margin:auto}.notification-card-icon svg{width:25px;height:25px}.notification-card-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.notification-card-meta{display:flex;align-items:center;gap:9px}.notification-card-meta>small{font-size:11px;color:#927f88}.notification-delete{width:30px;height:30px;display:grid;place-items:center;border:1px solid #ecdde4;border-radius:50%;background:#fff9fb;color:#a61a57}.notification-delete:hover{background:#ffe8f2}.notification-delete svg{width:14px;height:14px}.notification-card h2{font-size:21px;margin:9px 0 5px}.notification-card p{font-size:14px;line-height:1.55;color:#7d6c75;margin:0 0 12px}.notification-card .text-btn{display:inline-flex;align-items:center;gap:7px;font-size:13px}.notification-card .text-btn svg{width:15px;height:15px}
@media(max-width:760px){.topbar-actions{gap:10px}.notification-bell{width:39px;height:39px}.identity{display:none}.push-preference{align-items:flex-start;flex-wrap:wrap;padding:20px}.push-preference-icon{width:43px;height:43px}.push-preference>div{flex-basis:calc(100% - 65px)}.push-preference>.btn{width:100%}.notification-card{grid-template-columns:62px minmax(0,1fr);gap:12px;padding:17px}.notification-card>img{width:62px;height:62px}.notification-card-icon{width:44px;height:44px}.notification-card h2{font-size:18px}.notification-card p{font-size:13px}.notification-card-top{align-items:flex-start;flex-direction:column;gap:5px}}

.product-variation{font-size:13px;line-height:1.5;color:#795866;margin:0 0 13px;overflow-wrap:anywhere}.request-variation{display:block;margin-top:4px;font-size:12px;line-height:1.5;color:var(--muted)}
@media(max-width:760px){.product-variation{font-size:12px;margin-bottom:10px}}
.document-validity{margin:28px 0}.document-validity>.section-title{margin:0 0 16px}.validity-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.validity-card{border:1px solid #e9d8e0;border-radius:16px;padding:25px;background:#fff;display:flex;flex-direction:column}.validity-card.valid{border-top:3px solid #65a88a}.validity-card.expiring{border-top:3px solid #efa342;background:linear-gradient(140deg,#fff,#fff9ef)}.validity-card.expired{border-top:3px solid #e97c97;background:linear-gradient(140deg,#fff,#fff3f5)}.validity-top{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:18px}.validity-icon{width:39px;height:39px;display:grid;place-items:center;border-radius:11px;background:#fff0f6;color:var(--pink)}.validity-card h3{font-size:20px;margin:0 0 16px}.validity-card>small{font-size:12px}.validity-date{font-size:28px;font-weight:600;line-height:1.4;margin:2px 0 10px}.validity-card.not_informed .validity-date{font-size:21px;color:#87707e}.validity-card>p{font-size:13px;color:#87707e;line-height:1.55;flex:1;margin:0 0 18px}.validity-card>.text-btn{font-size:13px;display:inline-flex;align-items:center;gap:8px;align-self:flex-start}.validity-card>.text-btn svg{width:16px;height:16px}.badge.expired{background:#ffe4eb;color:#a43250;border:1px solid #fac8d5}.appointment-card{display:flex;align-items:center;gap:20px;border:1px solid #f0c7d8;background:linear-gradient(110deg,#fff0f7,#fff5e7);border-radius:16px;padding:27px;margin:25px 0}.appointment-icon{display:grid;place-items:center;background:#ffe0ee;color:#ca0b62;border:1px solid #f7bfd7;border-radius:50%;width:63px;height:63px;flex-shrink:0}.appointment-icon svg{width:27px;height:27px}.appointment-card>div{flex:1;min-width:0}.appointment-card .eyebrow{font-size:10px;margin-bottom:7px}.appointment-card h2{font-size:23px;margin-bottom:7px}.appointment-card p{font-size:14px;color:#8a6174;margin:0;max-width:580px}.appointment-card>.btn{font-size:13px;white-space:nowrap}.tier small{display:block;margin-top:6px;line-height:1.6}#upload-form{scroll-margin-top:26px}
@media(max-width:760px){.validity-grid{grid-template-columns:1fr;gap:14px}.validity-card{padding:22px}.validity-date{font-size:26px}.appointment-card{align-items:flex-start;flex-wrap:wrap;padding:22px;gap:14px}.appointment-icon{width:43px;height:43px}.appointment-icon svg{width:22px;height:22px}.appointment-card>div{flex-basis:calc(100% - 65px)}.appointment-card h2{font-size:21px}.appointment-card p{font-size:13px}.appointment-card>.btn{width:100%}.document-validity{margin-top:24px}}
.pwa-install-trigger{position:fixed;right:18px;bottom:18px;z-index:60;display:flex;align-items:center;gap:10px;border:1px solid #f0d6e0;border-radius:14px;background:#fff;color:var(--ink);padding:10px 14px 10px 10px;box-shadow:0 12px 34px #38222e24;text-align:left}.pwa-install-trigger:hover{background:#fff8fb}.pwa-install-trigger img{border-radius:50%}.pwa-install-trigger span,.pwa-install-trigger strong,.pwa-install-trigger small{display:block}.pwa-install-trigger strong{font-size:14px;color:var(--pink)}.pwa-install-trigger small{font-size:11px;color:var(--muted);font-weight:400}.pwa-install-backdrop{position:fixed;inset:0;z-index:110;background:#241c2388;backdrop-filter:blur(5px);display:grid;place-items:center;padding:22px}.pwa-install-guide{position:relative;width:min(100%,440px);display:flex;gap:19px;background:#fff;border:1px solid #f0d9e3;border-radius:20px;padding:28px;box-shadow:0 24px 70px #28162140}.pwa-install-guide>img{border-radius:20px;box-shadow:0 8px 24px #4a28371c}.pwa-install-guide h2{font-size:24px;margin-bottom:8px}.pwa-install-guide p{font-size:14px;color:var(--muted);margin-bottom:20px}.pwa-install-close{position:absolute;top:10px;right:12px;border:0;background:transparent;color:#927e87;font-size:26px;line-height:1;padding:5px 8px}@media(max-width:760px){.pwa-install-trigger{right:12px;bottom:calc(82px + env(safe-area-inset-bottom))}.pwa-install-guide{display:block;text-align:center;padding:28px 24px}.pwa-install-guide>img{margin-bottom:18px}}
