/* Subscriber brand theme */
body.has-company-brand{background:radial-gradient(circle at 92% -4%,color-mix(in srgb,var(--tenant-accent) 46%,transparent) 0,transparent 27%),var(--paper)}
body.has-company-brand .primary{background:var(--tenant-accent);color:var(--tenant-on-accent)}
body.has-company-brand .avatar,body.has-company-brand .coach-orb{background:var(--tenant-primary);color:var(--tenant-on-primary)}
body.has-company-brand .nav-btn.active{color:var(--tenant-primary)}
body.has-company-brand .filter.active,body.has-company-brand .day.today{background:var(--tenant-primary);color:var(--tenant-on-primary);border-color:var(--tenant-primary)}
body.has-company-brand .dose-card,body.has-company-brand .coach-summary{background:linear-gradient(145deg,var(--tenant-primary),color-mix(in srgb,var(--tenant-primary) 78%,#071c18)) ;color:var(--tenant-on-primary)}
body.has-company-brand .dose-card p,body.has-company-brand .dose-card .eyebrow,body.has-company-brand .coach-summary p,body.has-company-brand .coach-summary .eyebrow{color:var(--tenant-on-primary);opacity:.78}
body.has-company-brand .dose-card:after,body.has-company-brand .coach-summary:after{background:var(--tenant-accent)}
body.has-company-brand .ritual-coach-card{border-color:color-mix(in srgb,var(--tenant-primary) 28%,#d9e2da);background:linear-gradient(145deg,color-mix(in srgb,var(--tenant-accent) 18%,#fffdf9),#fffdf9 68%)}
body.has-company-brand .ritual-coach-card:after{background:color-mix(in srgb,var(--tenant-accent) 55%,transparent)}
body.has-company-brand .glance-item.done{background:color-mix(in srgb,var(--tenant-accent) 24%,white);border-color:color-mix(in srgb,var(--tenant-primary) 24%,#dfe6df)}
body.has-company-brand .coach-week-day.checked i{background:var(--tenant-primary);border-color:var(--tenant-primary);color:var(--tenant-on-primary)}
body.has-company-brand .coach-week-day.today i{outline-color:var(--tenant-accent)}
body.has-company-brand .vial-mini{background:linear-gradient(#fbfdfb 44%,var(--tenant-accent) 45%);border-color:color-mix(in srgb,var(--tenant-primary) 65%,#6d7b76)}
body.has-company-brand .progress i{background:var(--tenant-accent)}

/* Large, readable company lockup */
.branded-topbar{min-height:76px;padding:10px 2px 12px}.brand-lockup{display:flex;align-items:center;gap:10px;min-width:0;max-width:calc(100% - 50px);text-transform:none;letter-spacing:0}.brand-top-logo-frame{width:clamp(96px,30vw,132px);height:54px;flex:none;display:grid;place-items:center;overflow:hidden;border:1px solid color-mix(in srgb,var(--brand-primary) 24%,#e3e3db);border-radius:15px;background:#fff;padding:6px;box-shadow:0 7px 20px rgba(25,52,47,.08)}.brand-top-logo-frame>span{width:37px;height:37px;border-radius:12px;background:var(--brand-primary);color:var(--brand-on-primary);display:grid;place-items:center;font-size:18px;font-weight:900}.brand-top-logo{width:100%;height:100%;object-fit:contain;display:block;transform:scale(var(--logo-scale,1.15));transform-origin:center}.brand-top-copy{min-width:0}.brand-top-copy b,.brand-top-copy small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.brand-top-copy b{font-size:13px;line-height:1.15}.brand-top-copy small{font-size:9px;color:var(--muted);margin-top:4px;letter-spacing:.02em;text-transform:none}

/* Full-size brand identity preview */
.brand-identity-preview{display:grid;grid-template-columns:minmax(125px,155px) 1fr;gap:14px;align-items:center;border:1px solid color-mix(in srgb,var(--brand-primary) 22%,#dfe4df);border-radius:19px;padding:13px;background:linear-gradient(135deg,#fff,color-mix(in srgb,var(--brand-accent) 16%,#fff));overflow:hidden}.brand-logo-plate{height:78px;border-radius:14px;background:#fff;border:1px solid #e5e8e4;display:grid;place-items:center;padding:9px;overflow:hidden;box-shadow:0 7px 20px rgba(25,52,47,.07)}.identity-logo{width:100%;height:100%;object-fit:contain;display:block;transform:scale(var(--logo-scale,1.15));transform-origin:center}.identity-initial{width:53px;height:53px;border-radius:17px;background:var(--brand-primary);color:var(--brand-on-primary);display:grid;place-items:center;font-size:24px;font-weight:900}.brand-preview-copy{min-width:0}.brand-preview-copy h3{font-family:Georgia,serif;font-size:22px;font-weight:500;line-height:1.05;margin:4px 0 6px;overflow-wrap:anywhere}.brand-preview-copy p{font-size:11px;color:var(--muted);line-height:1.35;margin:0}.brand-card{overflow:hidden}.brand-card>.brand-identity-preview{margin-bottom:14px}.brand-card-grid{display:grid;grid-template-columns:165px 1fr;gap:15px;align-items:center}.brand-card h2{font-family:Georgia,serif;font-size:23px;font-weight:500;line-height:1.05;margin:5px 0 7px}.brand-card p{font-size:12px;line-height:1.45;color:var(--muted);margin:0 0 11px}

/* Clean live vial, built in HTML so every subscriber's logo stays dynamic */
.brand-vial-stage{--vial-scale:1;position:relative;overflow:hidden;border-radius:24px;background:radial-gradient(circle at 35% 30%,color-mix(in srgb,var(--brand-accent) 46%,transparent),transparent 30%),linear-gradient(145deg,color-mix(in srgb,var(--brand-primary) 88%,#fff),color-mix(in srgb,var(--brand-primary) 64%,#031318));min-height:380px;padding:12px;display:grid;place-items:center;isolation:isolate}.vial-aura{position:absolute;width:230px;height:230px;border-radius:50%;background:color-mix(in srgb,var(--brand-accent) 28%,transparent);filter:blur(20px);bottom:12px;z-index:-1}.clean-vial{position:relative;width:172px;height:312px;filter:drop-shadow(0 20px 16px rgba(0,0,0,.3))}.clean-vial-cap{position:absolute;z-index:4;top:0;left:15px;width:142px;height:48px;border-radius:15px 15px 10px 10px;background:linear-gradient(180deg,#f7f8f8 0,#abb3b1 24%,#5c6865 58%,#c7cdcb 100%);border:1px solid rgba(255,255,255,.6);box-shadow:inset 0 5px 8px rgba(255,255,255,.65),0 5px 8px rgba(0,0,0,.2)}.clean-vial-cap i{position:absolute;left:16px;right:16px;top:8px;height:16px;border-radius:999px;background:var(--brand-primary);box-shadow:inset 0 4px 7px rgba(255,255,255,.23)}.clean-vial-neck{position:absolute;z-index:2;top:39px;left:36px;width:100px;height:35px;border-radius:8px;background:linear-gradient(90deg,rgba(255,255,255,.55),rgba(212,228,226,.24) 40%,rgba(24,60,57,.32) 78%,rgba(255,255,255,.45));border:2px solid rgba(255,255,255,.55)}.clean-vial-bottle{position:absolute;z-index:3;left:0;right:0;top:62px;bottom:0;border-radius:28px 28px 34px 34px;background:linear-gradient(90deg,rgba(255,255,255,.82),rgba(210,234,232,.38) 24%,rgba(71,110,107,.18) 62%,rgba(255,255,255,.68));border:2px solid rgba(255,255,255,.72);box-shadow:inset 10px 0 16px rgba(255,255,255,.58),inset -9px 0 13px rgba(32,63,60,.16),inset 0 -10px 15px rgba(127,176,171,.2)}.glass-shine{position:absolute;left:15px;top:16px;width:12px;height:176px;border-radius:999px;background:linear-gradient(180deg,rgba(255,255,255,.92),rgba(255,255,255,.18));opacity:.7}.dynamic-vial-label{position:absolute;left:11px;right:11px;top:48px;height:168px;display:flex;flex-direction:column;align-items:center;text-align:center;background:linear-gradient(160deg,#fff,#f7f7f3);color:#13231f;border-radius:12px;padding:10px 10px 8px;border:1px solid rgba(25,52,47,.12);box-shadow:0 5px 12px rgba(25,52,47,.12);overflow:hidden}.dynamic-vial-label:before{content:"";position:absolute;left:0;right:0;top:0;height:7px;background:linear-gradient(90deg,var(--brand-primary),var(--brand-accent))}.vial-logo-plate{width:94%;height:39px;display:grid;place-items:center;margin:2px 0 3px;padding:2px 5px;overflow:hidden}.company-logo{width:100%;height:100%;object-fit:contain;display:block;transform:scale(var(--logo-scale,1.15));transform-origin:center}.company-mark{width:36px;height:36px;border-radius:12px;background:var(--brand-primary);color:var(--brand-on-primary);display:grid;place-items:center;margin:1px 0 4px}.company-mark span{font-size:16px;font-weight:900}.company-name{max-width:100%;font-size:10px;line-height:1.08;font-weight:900;letter-spacing:.055em;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.peptide-name{max-width:100%;font-family:Georgia,serif;font-size:20px;line-height:1.02;font-weight:600;margin-top:7px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vial-strength{font-size:12px;font-weight:900;margin-top:7px;padding:4px 10px;border-radius:999px;background:var(--brand-accent);color:var(--brand-on-accent)}.vial-label-footer{font-size:6px;line-height:1;letter-spacing:.12em;font-weight:900;color:#6d7a75;margin-top:7px}.vial-shadow{position:absolute;left:10%;right:10%;bottom:-9px;height:22px;border-radius:50%;background:rgba(0,0,0,.38);filter:blur(8px)}
.brand-vial-stage.compact{min-height:230px;border-radius:18px}.compact .clean-vial{position:absolute;left:50%;bottom:8px;transform:translateX(-50%) scale(.66);transform-origin:bottom center}.brand-vial-stage.setup{min-height:330px;margin:-4px 0 16px}.setup .clean-vial{position:absolute;left:50%;bottom:7px;transform:translateX(-50%) scale(.91);transform-origin:bottom center}.brand-vial-stage.preview{min-height:345px;margin-top:12px}.preview .clean-vial{position:absolute;left:50%;bottom:5px;transform:translateX(-50%) scale(.94);transform-origin:bottom center}

/* Live kit scene keeps subscriber branding readable at phone size */
.branded-kit-visual{height:235px;background:linear-gradient(135deg,color-mix(in srgb,var(--brand-primary) 90%,#031713),color-mix(in srgb,var(--brand-primary) 62%,#06110f));border-color:color-mix(in srgb,var(--brand-primary) 40%,#dfe3de)}.branded-kit-visual:before{content:"";position:absolute;width:240px;height:240px;border-radius:50%;right:-100px;top:-105px;background:var(--brand-accent);opacity:.32}.branded-kit-visual:after{display:none}.branded-kit-visual .kit-copy{z-index:3;width:43%;top:24px}.branded-kit-visual .kit-copy span{color:var(--brand-accent)}.live-kit-scene{position:absolute;z-index:2;right:5px;bottom:8px;width:59%;height:218px}.kit-vial-row{position:absolute;left:0;right:0;top:0;height:172px;display:flex;align-items:flex-end;justify-content:center;gap:2px}.brand-vial-stage.kit{width:91px;height:166px;min-height:0;overflow:visible;padding:0;background:transparent;border-radius:0}.kit .vial-aura{width:75px;height:75px;bottom:2px;filter:blur(9px)}.kit .clean-vial{position:absolute;left:50%;bottom:0;transform:translateX(-50%) scale(.47);transform-origin:bottom center}.kit-1{transform:rotate(-3deg)}.kit-2{transform:rotate(3deg)}.kit-accessories{position:absolute;left:1px;right:1px;bottom:0;height:48px}.prep-pads{position:absolute;left:0;bottom:4px;display:flex;gap:3px;transform:rotate(-5deg)}.prep-pads i{display:block;width:34px;height:29px;border-radius:4px;background:linear-gradient(135deg,#fff,#dce4e2);border:1px solid rgba(25,52,47,.18);box-shadow:0 4px 7px rgba(0,0,0,.18)}.kit-syringe{position:absolute;left:56px;right:37px;bottom:12px;height:11px;border-radius:999px;background:rgba(244,249,248,.82);border:1px solid rgba(25,52,47,.25);transform:rotate(-7deg);box-shadow:0 3px 5px rgba(0,0,0,.18)}.kit-syringe:before{content:"";position:absolute;left:-23px;top:4px;width:24px;height:2px;background:#c8d2cf}.kit-syringe i{position:absolute;right:-8px;top:-3px;width:9px;height:16px;border-radius:2px;background:#edf3f1;border:1px solid #a9b7b3}.kit-syringe span{position:absolute;left:12px;right:9px;top:3px;height:1px;background:repeating-linear-gradient(90deg,#6c7b76 0 1px,transparent 1px 8px)}.clean-storage-bin{position:absolute;right:0;bottom:0;width:38px;height:44px;border-radius:7px 7px 9px 9px;background:linear-gradient(135deg,#4a5552,#18231f);border:1px solid rgba(255,255,255,.18);box-shadow:0 5px 8px rgba(0,0,0,.26)}.clean-storage-bin i{position:absolute;left:-3px;right:-3px;top:-4px;height:9px;border-radius:5px;background:#67726f;border:1px solid #28322f}

/* Branding form */
.brand-form-preview{margin-bottom:17px}.color-field{display:grid;grid-template-columns:48px 1fr;gap:9px;align-items:center}.color-field input[type=color]{width:48px;height:48px;padding:3px;border-radius:12px}.color-field small,.field-help{font-size:10px;line-height:1.35;color:var(--muted)}.field-help{display:block;margin-top:6px}.logo-size-control{display:grid;grid-template-columns:1fr 52px;gap:10px;align-items:center;border:1px solid var(--line);border-radius:13px;background:#fff;padding:8px 11px}.logo-size-control input{width:100%;accent-color:var(--brand-primary,#19342f)}.logo-size-control output{text-align:right;font-size:12px;font-weight:800}.brand-note{border-left:4px solid var(--brand-accent,#dfaa35);padding:10px 0 10px 11px;font-size:11px;line-height:1.45;color:var(--muted);margin:11px 0}.brand-rights{display:flex;align-items:flex-start;gap:9px;border:1px solid var(--line);background:white;padding:11px;border-radius:13px;font-size:11px;line-height:1.4}.brand-rights input{margin-top:2px}.brand-label{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.09em;color:#577068;margin-bottom:5px}

@media(max-width:420px){.brand-top-logo-frame{width:102px;height:50px}.brand-top-copy b{font-size:12px}.brand-top-copy small{max-width:105px}.brand-card-grid{grid-template-columns:145px 1fr}.brand-card h2{font-size:20px}.brand-identity-preview{grid-template-columns:125px 1fr}.brand-logo-plate{height:70px}.brand-preview-copy h3{font-size:19px}.branded-kit-visual .kit-copy{width:42%}.live-kit-scene{width:61%;right:-2px}.brand-vial-stage.kit{width:84px}}
@media(max-width:360px){.brand-top-copy{display:none}.brand-top-logo-frame{width:132px}.brand-card-grid{grid-template-columns:1fr}.brand-card-grid .brand-vial-stage.compact{min-height:250px}.brand-identity-preview{grid-template-columns:110px 1fr}.brand-logo-plate{height:66px}.branded-kit-visual .kit-copy b{font-size:22px}.brand-vial-stage.kit{width:76px}.kit .clean-vial{transform:translateX(-50%) scale(.43)}}

/* Photographic vial system: real glass/metal base with a live subscriber label */
.photo-vial{position:relative;width:233px;height:360px;overflow:hidden;border-radius:20px;background:#02050a;box-shadow:0 24px 30px rgba(0,0,0,.38)}.photo-vial>img{display:block;width:100%;height:100%;object-fit:cover}.photo-vial-label{position:absolute;z-index:2;left:24%;top:39.5%;width:52%;height:38%;display:flex;flex-direction:column;align-items:center;text-align:center;overflow:hidden;border-radius:7px;padding:5px 6px 4px;color:#101d1a;background:rgba(255,255,255,.78);border:1px solid rgba(255,255,255,.75);box-shadow:0 2px 9px rgba(0,0,0,.15);backdrop-filter:blur(1.5px)}.photo-vial-label:before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:linear-gradient(90deg,var(--brand-primary),var(--brand-accent),var(--brand-primary))}.photo-vial-label .vial-logo-plate{width:94%;height:34%;min-height:0;display:grid;place-items:center;margin:1px 0 2px;padding:1px 3px;overflow:hidden}.photo-vial-label .company-name{font-size:7px;line-height:1.05;letter-spacing:.04em}.photo-vial-label .peptide-name{font-size:15px;line-height:1;margin-top:4px}.photo-vial-label .vial-strength{font-size:9px;line-height:1;margin-top:5px;padding:3px 7px}.photo-vial-label .vial-label-footer{font-size:4px;margin-top:5px}.photo-vial-label .company-mark{width:29px;height:29px;border-radius:9px;margin:1px 0 2px}.photo-vial-label .company-mark span{font-size:13px}
.brand-vial-stage.compact .photo-vial{position:absolute;left:50%;bottom:5px;width:145px;height:225px;transform:translateX(-50%)}.brand-vial-stage.setup .photo-vial{position:absolute;left:50%;bottom:5px;width:207px;height:320px;transform:translateX(-50%)}.brand-vial-stage.preview .photo-vial{position:absolute;left:50%;bottom:5px;width:217px;height:335px;transform:translateX(-50%)}
.brand-vial-stage.kit .photo-vial{position:absolute;left:50%;bottom:0;width:107px;height:166px;transform:translateX(-50%);border-radius:10px;box-shadow:none}.brand-vial-stage.kit .photo-vial>img{transform:scale(1.22);transform-origin:50% 50%}.brand-vial-stage.kit .photo-vial-label{top:41%;transform:scale(1.22);border-radius:3px;padding:2px 3px 1px}.brand-vial-stage.kit .photo-vial-label:before{height:2px}.brand-vial-stage.kit .photo-vial-label .vial-logo-plate{height:39%;margin:0;padding:0 1px}.brand-vial-stage.kit .photo-vial-label .company-name,.brand-vial-stage.kit .photo-vial-label .vial-label-footer{display:none}.brand-vial-stage.kit .photo-vial-label .peptide-name{font-family:Georgia,serif;font-size:7px;line-height:1;margin-top:2px}.brand-vial-stage.kit .photo-vial-label .vial-strength{font-size:5px;margin-top:3px;padding:2px 4px}.brand-vial-stage.kit .photo-vial-label .company-mark{width:17px;height:17px;border-radius:5px;margin:0}.brand-vial-stage.kit .photo-vial-label .company-mark span{font-size:8px}
@media(max-width:420px){.brand-vial-stage.kit .photo-vial{width:101px;height:157px}.brand-vial-stage.kit{width:88px}}@media(max-width:360px){.brand-vial-stage.kit .photo-vial{width:94px;height:146px}.brand-vial-stage.kit{width:79px}}

/* Logos always fit cleanly; do not crop or print a second company placeholder. */
.brand-top-logo,.identity-logo,.company-logo{transform:none;width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain}
.brand-identity-preview.logo-only{grid-template-columns:1fr}
.brand-identity-preview.logo-only .brand-logo-plate{height:106px;padding:11px}
.photo-vial-label{background:linear-gradient(160deg,#fff,#f7f6ef);border-color:rgba(255,255,255,.94);backdrop-filter:none}
.photo-vial-label.has-logo .vial-logo-plate{height:42%;margin-top:3px}
.photo-vial-label.has-logo .peptide-name{margin-top:5px}
