/* Lumi / pearl glass. Brand-coloured surfaces with legible, opaque text. */
html{background:#d5dfdb}
body{min-height:100dvh;padding:22px 12px 36px;background:radial-gradient(ellipse at 12% 10%,#abc3bd 0,transparent 45%),radial-gradient(ellipse at 90% 70%,#dfd3c0 0,transparent 48%),#dce4de;background-attachment:fixed}
#lumi-app{--lm-teal:#496b69;--lm-ink:#243e3c;--lm-muted:#5f716a;--lm-cream:#f1f2e9;--lm-paper:#fafaf3;--lm-line:rgba(72,101,87,.14);--lm-round:28px;font-family:-apple-system,BlinkMacSystemFont,'DM Sans',sans-serif;--glass-fill:linear-gradient(135deg,rgba(255,255,251,.85),rgba(247,248,235,.52));--glass-edge:rgba(255,255,255,.88);--glass-shadow:inset 0 1px 0 #fff, inset 0 -1px 0 #ffffff80,0 10px 28px #30483e09,0 1px 3px #314b4110}
#lumi-app .lm-demo{padding:8px 15px 12px;color:#4a645a;letter-spacing:1.4px;font-size:10px}
#lumi-app .lm-demo>span:last-child{font-size:10px;letter-spacing:.1px}
#lumi-app .lm-dot{background:#7a9281;box-shadow:0 0 0 3px #ffffff60}
#lumi-app .lm-phone{position:relative;isolation:isolate;border:1px solid #ffffffbc;border-radius:40px;background:radial-gradient(ellipse 350px 460px at 100% 12%,#ccdcca99,transparent 80%),radial-gradient(ellipse 400px 500px at 0% 65%,#e5daca88,transparent 80%),linear-gradient(155deg,#f2f4ec,#eaf0e9 50%,#f5eee3);box-shadow:inset 0 1px 0 #fff,0 30px 80px #2d4a4025;overflow:clip}
#lumi-app .lm-header{position:relative;z-index:12;margin:12px 12px 0;padding:17px 18px;border:1px solid #ffffff45;border-radius:28px;background:linear-gradient(125deg,#557870e8,#344f4ee8);box-shadow:inset 0 1px 0 #ffffff58,inset 0 -1px 0 #18373120,0 8px 22px #2d4a4010;-webkit-backdrop-filter:blur(24px) saturate(130%);backdrop-filter:blur(24px) saturate(130%)}
#lumi-app .lm-brand{width:133px;opacity:.96}
#lumi-app .lm-avatar{width:44px;height:44px;border:1px solid #ffffff65;background:linear-gradient(145deg,#ffffff30,#ffffff0b);box-shadow:inset 0 1px 2px #ffffff50,0 3px 10px #18373112;color:#fff9e9;font-weight:500;letter-spacing:.4px;font-size:11px}
#lumi-app .lm-pad{padding:29px 23px 34px}
#lumi-app h1{font-size:36px;line-height:1.16;letter-spacing:-1.25px}
#lumi-app h2{font-size:26px;letter-spacing:-.7px}
#lumi-app h3{font-family:inherit;font-weight:500}
#lumi-app .lm-eyebrow{font-size:10px;letter-spacing:2.25px;color:#566e61;font-weight:600}
#lumi-app .lm-sub{font-size:14px;line-height:1.65}
#lumi-app .lm-small{font-size:13px;line-height:1.55}
#lumi-app .lm-heading{margin-bottom:25px}
#lumi-app .lm-section{margin-top:28px}
#lumi-app .lm-home-hero{margin:12px 12px 0;padding:31px 23px 35px;border:1px solid #ffffff5a;border-radius:30px;background:radial-gradient(ellipse at 85% 0%,#a5b89890,transparent 70%),linear-gradient(145deg,#617e6a,#3f5f59 65%,#315551);box-shadow:inset 0 1px 0 #ffffff60,0 12px 32px #344d4012;min-height:223px}
#lumi-app .lm-home-hero:before{content:'';position:absolute;pointer-events:none;inset:0;background:linear-gradient(120deg,transparent 20%,#ffffff10 42%,transparent 63%);background-size:220% 100%;animation:lm-glass-light 12s ease-in-out infinite;z-index:-1}
#lumi-app .lm-home-hero h1{font-size:41px;line-height:1.15;letter-spacing:-1.5px;max-width:310px;margin-top:18px}
#lumi-app .lm-home-hero .lm-eyebrow{color:#e4eadc;font-weight:500;font-size:10px}
#lumi-app .lm-home-hero em{color:#ecdfc5}
#lumi-app .lm-star{font-size:61px;right:18px;bottom:25px;color:#eee4cb;opacity:.5;text-shadow:0 0 20px #f7edce30}
#lumi-app .lm-orbit{border-color:#f5f3dc25;width:260px;height:260px;top:-100px;right:-78px;box-shadow:inset 0 0 55px #ffffff05,0 0 40px #ffffff04}
#lumi-app .lm-home{padding-top:28px}
#lumi-app .lm-home>.lm-row h2{font-size:23px}
#lumi-app .lm-home>.lm-row>svg{width:19px;height:19px;color:#708677;stroke-width:1.4}
#lumi-app :is(.lm-appointment,.lm-summary,.lm-bag-total,.lm-recovery,.lm-look,.lm-history){background:var(--glass-fill);border:1px solid var(--glass-edge);border-radius:27px;box-shadow:var(--glass-shadow);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}
#lumi-app .lm-appointment{padding:21px}
#lumi-app .lm-appointment>.lm-row>svg{width:31px;height:31px;stroke-width:1;color:#738774;flex-shrink:0}
#lumi-app .lm-appointment h3{font-size:16px;letter-spacing:-.35px}
#lumi-app .lm-action{min-height:52px;border:1px solid #ffffff66;border-radius:19px;background:linear-gradient(130deg,#5a7566,#3e625b);box-shadow:inset 0 1px 0 #ffffff50,inset 0 -1px 0 #233c3c30,0 6px 16px #35574b19;font-size:14px;letter-spacing:.1px;color:#fffdf5;transition:transform .28s cubic-bezier(.22,1,.36,1),box-shadow .28s ease}
#lumi-app .lm-action:active{transform:scale(.97);box-shadow:inset 0 2px 9px #233c3c35}
#lumi-app .lm-secondary{background:var(--glass-fill);color:var(--lm-ink);border-color:#fff;box-shadow:var(--glass-shadow)}
#lumi-app .lm-link{font-size:14px;color:#3c6258;min-height:44px}
#lumi-app .lm-service-grid{gap:13px}
#lumi-app .lm-category{min-height:143px;padding:18px 19px;border:1px solid #fffffff0;border-radius:26px;background:linear-gradient(140deg,#ffffffb8,#ecdfc17d);box-shadow:var(--glass-shadow)}
#lumi-app .lm-category:nth-child(2){background:linear-gradient(140deg,#ffffffad,#c8dcca80)}
#lumi-app .lm-category svg{height:28px;width:28px;stroke-width:1.15;margin-bottom:18px}
#lumi-app .lm-category strong{font-size:24px;letter-spacing:-.5px;margin-bottom:2px}
#lumi-app .lm-category span{font-size:12px;color:#5c7062}
#lumi-app .lm-studio-teaser{position:relative;min-height:254px;display:block;border-radius:29px;border:1px solid #ffffffb3;box-shadow:var(--glass-shadow);background:#d9d2c6}
#lumi-app .lm-studio-teaser>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 50%;transition:transform 1.3s cubic-bezier(.2,.7,.2,1)}
#lumi-app .lm-studio-teaser>div{position:relative;z-index:1;margin:158px 12px 12px;padding:16px 40px 16px 16px;border:1px solid #ffffffc2;border-radius:21px;background:linear-gradient(130deg,#fffffbc9,#f6f2e5aa);-webkit-backdrop-filter:blur(22px) saturate(120%);backdrop-filter:blur(22px) saturate(120%);box-shadow:inset 0 1px 0 #fff,0 5px 18px #283c3320}
#lumi-app .lm-studio-teaser strong{font-size:23px;letter-spacing:-.7px;margin-bottom:5px}
#lumi-app .lm-studio-teaser span{font-size:12px;line-height:1.5;display:block;color:#40574e}
#lumi-app .lm-studio-teaser>svg{position:absolute;z-index:2;right:26px;bottom:42px;margin:0;width:18px;height:18px}
#lumi-app .lm-esthetic-teaser{background:linear-gradient(130deg,#ffffffb8,#d6e2d38c);border:1px solid #fff;border-radius:27px;padding:22px 19px;gap:13px;box-shadow:var(--glass-shadow)}
#lumi-app .lm-esthetic-teaser h2{font-size:23px}
#lumi-app .lm-esthetic-teaser>svg:first-child{width:31px;height:40px;color:#668472}
#lumi-app .lm-esthetic-teaser .lm-small{font-size:12px}
#lumi-app .lm-nav{position:fixed;left:50%;right:auto;bottom:max(14px,env(safe-area-inset-bottom));transform:translateX(-50%);width:calc(100% - 28px);max-width:432px;z-index:20;border:1px solid #ffffffed;border-radius:30px;padding:7px 6px;gap:2px;background:linear-gradient(135deg,#ffffffb8,#f4f5eb94);-webkit-backdrop-filter:blur(28px) saturate(150%);backdrop-filter:blur(28px) saturate(150%);box-shadow:inset 0 1px 1px #fff,inset 0 -1px 1px #ffffffdd,0 12px 40px #2b49342b,0 2px 5px #2b493410;overflow:hidden}
#lumi-app .lm-nav button{position:relative;min-width:0;min-height:57px;padding:8px 1px 7px;border:1px solid transparent;border-radius:23px;gap:5px;font-size:11px;letter-spacing:.05px;font-weight:500;color:#62756a;transition:background .3s,box-shadow .3s,transform .3s}
#lumi-app .lm-nav svg{width:21px;height:21px;stroke-width:1.5}
#lumi-app .lm-nav button[aria-current=page]{color:#31574e;background:linear-gradient(145deg,#ffffffed,#d1e0cfb3);border-color:#ffffffde;box-shadow:inset 0 1px 1px #fff,0 2px 8px #2e514412}
#lumi-app .lm-nav button[aria-current=page] svg{stroke-width:1.8}
#lumi-app .lm-nav button:active{transform:scale(.92)}
#lumi-app #lm-screen{padding-bottom:104px;min-height:560px}
#lumi-app .lm-chips{gap:7px;margin:17px 0}
#lumi-app .lm-chip{border:1px solid #ffffffed;background:#ffffff70;border-radius:18px;padding:10px 14px;color:#456051;box-shadow:inset 0 1px 0 #fff,0 3px 8px #2c4b3505;font-size:13px;min-height:43px;transition:background .25s,transform .25s}
#lumi-app .lm-chip[aria-pressed=true]{background:linear-gradient(140deg,#5d7567,#3f6259);color:#fffdf2;border-color:#ffffff80;box-shadow:inset 0 1px 0 #ffffff70,0 4px 10px #37544614}
#lumi-app .lm-service{border:1px solid #ffffffbf;border-radius:23px;margin:10px 0;padding:16px 14px;background:linear-gradient(120deg,#ffffffab,#fbfbf266);box-shadow:inset 0 1px 0 #fff,0 3px 12px #36554205;gap:13px;transition:background .25s,box-shadow .25s}
#lumi-app .lm-service[aria-pressed=true]{background:linear-gradient(120deg,#fafff0e0,#dce9d0aa);border-color:#7f9b7f50;box-shadow:inset 0 1px 0 #fff,0 4px 12px #3655420a}
#lumi-app .lm-service-mark{width:48px;height:54px;border:1px solid #ffffffb3;border-radius:17px;background:linear-gradient(145deg,#ffffffa8,#dae2cd99);box-shadow:inset 0 1px 0 #fff}
#lumi-app .lm-service-choose{width:29px;height:29px;border-color:#b0c1ae80;background:#ffffff80;font-size:17px}
#lumi-app .lm-service[aria-pressed=true] .lm-service-choose{color:#fff;background:#59775f;border-color:#59775f;font-size:13px}
#lumi-app .lm-service-text strong{font-size:15px;letter-spacing:-.2px}
#lumi-app .lm-service-text span{font-size:12px}
#lumi-app .lm-bag-banner{padding:16px 15px;margin:20px 0;border-radius:22px;border:1px solid #ffffffd6;background:linear-gradient(120deg,#e4edd5dc,#f9f7e1bf);box-shadow:inset 0 1px 0 #fff,0 5px 18px #3a59420e;font-size:13px;gap:8px}
#lumi-app .lm-bag-banner strong{font-size:13px;white-space:nowrap}
#lumi-app .lm-bag-banner svg{flex-shrink:0;width:18px;height:18px}
#lumi-app .lm-bag-line{padding:15px 0}
#lumi-app .lm-bag-line button{border-radius:50%;border:1px solid #ffffffae;background:#ffffff60;display:grid;place-items:center}
#lumi-app .lm-bag-total{padding:22px}
#lumi-app .lm-menu-item{padding:19px 0;gap:11px}
#lumi-app .lm-food-icon{background:linear-gradient(135deg,#ffffffb0,#e0e8cdb3);border:1px solid #ffffffde;box-shadow:inset 0 1px 0 #fff;width:47px;height:60px;border-radius:18px}
#lumi-app .lm-menu-description p{font-size:12px;line-height:1.5}
#lumi-app .lm-qty{background:#ffffff70;padding:4px;border:1px solid #ffffffb0;border-radius:17px;gap:4px;box-shadow:inset 0 1px 0 #fff}
#lumi-app .lm-qty button{width:27px;height:34px;border:0;border-radius:12px;background:#f8fff5b8;box-shadow:0 1px 3px #3a59420d;color:#395c4d}
#lumi-app .lm-form input,#lumi-app .lm-form select,#lumi-app .lm-form textarea{background:linear-gradient(130deg,#ffffffbc,#ffffff6b);border:1px solid #ffffffef;border-radius:17px;min-height:52px;padding:13px 15px;box-shadow:inset 0 1px 1px #fff,0 3px 9px #34564406;color:#29493d;transition:box-shadow .25s}
#lumi-app .lm-form :is(input,select,textarea):focus{box-shadow:0 0 0 3px #809b7c26, inset 0 1px 0 #fff;border-color:#718f745e}
#lumi-app .lm-form input[type=checkbox]{min-height:20px;width:20px;height:20px;padding:0;box-shadow:none}
#lumi-app .lm-form label{font-size:13px;font-weight:500;letter-spacing:.1px;margin-top:19px}
#lumi-app .lm-form label>span{font-weight:400}
#lumi-app .lm-auth{padding-top:36px}
#lumi-app .lm-auth h1{font-size:42px;line-height:1.14;letter-spacing:-1.5px}
#lumi-app .lm-auth .lm-heading{margin-bottom:24px}
#lumi-app .lm-auth .lm-sub{max-width:285px}
#lumi-app .lm-profile-shortcuts button{border-radius:25px;border:1px solid #ffffffd6;background:var(--glass-fill);box-shadow:var(--glass-shadow);padding:20px;gap:10px}
#lumi-app .lm-profile-shortcuts strong{font-size:30px}
#lumi-app .lm-look{border-radius:23px}
#lumi-app .lm-look .lm-link{font-size:12px}
#lumi-app .lm-history{padding:21px;margin-bottom:15px}
#lumi-app .lm-pill{background:#dde9d7ba;color:#446b45;border:1px solid #ffffffa6;padding:5px 9px}
#lumi-app .lm-date{background:#e1e9d4b8;border:1px solid #ffffffc9;border-radius:15px}
#lumi-app .lm-esthetic-intro{background:radial-gradient(ellipse at 90% 0,#ceddc690,transparent 80%),linear-gradient(130deg,#ffffffbc,#efe5ced9);border:1px solid #fff;border-radius:28px;box-shadow:var(--glass-shadow);padding:29px 23px;min-height:155px}
#lumi-app .lm-esthetic-intro svg{color:#738c70}
#lumi-app .lm-studio-stage{border-radius:29px;border:1px solid #fffffff0;box-shadow:0 10px 35px #354d3415,inset 0 1px 0 #fff}
#lumi-app .lm-stage-label{left:12px;top:12px;padding:7px 10px;border-radius:15px;background:#fffff3aa;border:1px solid #ffffffa6;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);font-size:9px;color:#415c4e;letter-spacing:1.2px}
#lumi-app .lm-stage-watermark{color:#efead8;text-shadow:0 1px 8px #354d3470}
#lumi-app .lm-colour-option>span{width:38px;height:38px;border:3px solid #f8f9ed;box-shadow:0 3px 7px #324b3320}
#lumi-app .lm-colour-option[aria-pressed=true]>span{outline:1px solid #4c7359;outline-offset:2px}
#lumi-app .lm-colour-code{font-size:10px;letter-spacing:.4px}
#lumi-app .lm-upload{border:1px solid #ffffffd6;background:#ffffff70;border-radius:19px;min-height:53px;box-shadow:inset 0 1px 0 #fff;font-size:13px;padding:12px}
#lumi-app .lm-notice{background:#e4ecd9a6;border:1px solid #ffffffe3;border-radius:20px;padding:16px;color:#4c6653;font-size:12px;line-height:1.65}
#lumi-app #lm-status:not(:empty){bottom:100px;border:1px solid #fff;border-radius:22px;background:#f5faeedc;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);box-shadow:0 8px 30px #30483e20;color:#315c3e;max-width:412px}
#lumi-app .lm-back{font-size:13px;gap:8px;color:#486f5e}
#lumi-app .lm-empty{padding:30px 15px;font-size:14px}
@keyframes lm-glass-light{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
@media(hover:hover){#lumi-app .lm-service:hover,#lumi-app .lm-category:hover{box-shadow:inset 0 1px 0 #fff,0 8px 22px #36554215}#lumi-app .lm-action:hover{box-shadow:inset 0 1px 0 #ffffff70,0 8px 20px #35574b30}}
@media(max-width:500px){html,body{background:#ecf0e7}body{padding:0}#lumi-app .lm-demo{padding:10px 20px 5px;background:transparent}#lumi-app .lm-phone{border:0;border-radius:0;box-shadow:none;min-height:calc(100dvh - 30px)}#lumi-app .lm-header{margin-top:9px;padding-top:17px}#lumi-app .lm-nav{width:calc(100% - 28px);max-width:460px}#lumi-app #lm-screen{padding-bottom:calc(101px + env(safe-area-inset-bottom))}}
@media(max-width:370px){#lumi-app .lm-pad{padding-left:18px;padding-right:18px}#lumi-app .lm-home-hero{padding:28px 19px;min-height:210px}#lumi-app .lm-home-hero h1{font-size:36px}#lumi-app .lm-star{font-size:47px;right:15px}#lumi-app .lm-nav{width:calc(100% - 20px);padding:6px 4px}#lumi-app .lm-nav button{font-size:10px;gap:6px}#lumi-app .lm-bag-banner{flex-wrap:wrap}#lumi-app .lm-bag-banner>span{min-width:130px}#lumi-app .lm-food-icon{display:none}#lumi-app .lm-service-mark{width:40px}#lumi-app .lm-service{gap:10px;padding:14px 11px}#lumi-app .lm-category{padding:17px 15px}#lumi-app .lm-auth h1{font-size:38px}}
@media(prefers-reduced-motion:reduce){#lumi-app *,#lumi-app *:before,#lumi-app *:after{animation:none!important;transition:none!important}}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){#lumi-app .lm-nav{background:#f5f6ed}#lumi-app .lm-studio-teaser>div{background:#f7f5ec}#lumi-app .lm-header{background:#46665d}}
