:root{font-family:Yu Gothic UI,Meiryo,sans-serif;color:#17221d;background:#eef3ef;font-synthesis:none;--insurance-exclusion-border: #e6b800;--appointment-type-insurance-bg: #f0fbf4;--appointment-type-self-pay-bg: #fff8dc;--appointment-type-traffic-accident-bg: #fff0f2;--appointment-type-other-bg: #f3edfa}.crossaging-page{width:100%;min-width:0;max-width:100%;min-height:100vh;min-height:100dvh;padding:max(20px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(40px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));overflow-x:hidden;background:linear-gradient(150deg,#f7f8fa,#fff 42%,#f6f0ed);color:#3e4148}.crossaging-shell{width:min(960px,100%);min-width:0;max-width:100%;margin:auto}.crossaging-back{display:inline-flex;align-items:center;min-height:44px;margin-bottom:12px;color:#747783;font-size:14px;font-weight:850}.crossaging-hero,.crossaging-section,.crossaging-product,.crossaging-rubera,.crossaging-consult{position:relative;min-width:0;margin-bottom:18px;padding:clamp(20px,5vw,36px);overflow:hidden;border:1px solid #d9dce2;border-radius:21px;background:#fffffff5;box-shadow:0 10px 28px #3c42500f}.crossaging-hero{text-align:center;background:linear-gradient(145deg,#fff,#f2f3f6 72%,#faeef1)}.crossaging-hero:before{position:absolute;top:-150px;right:-100px;width:430px;height:280px;border:1px solid rgba(190,158,117,.22);border-radius:50%;background:#ffffff4d;content:""}.crossaging-kicker{position:relative;margin:0 0 5px;color:#b09268;font-size:13px;font-weight:900;letter-spacing:.18em}.crossaging-hero h1{position:relative;margin:0 0 15px;color:#555861;font-family:Georgia,serif;font-size:clamp(34px,7vw,62px);font-weight:500;letter-spacing:.04em;line-height:1.1;overflow-wrap:anywhere}.crossaging-hero h2,.crossaging-section h2,.crossaging-rubera h2,.crossaging-consult h2{margin:0 0 14px;color:#545761;font-size:clamp(21px,4.8vw,28px);line-height:1.5}.crossaging-hero>p,.crossaging-section p,.crossaging-product p,.crossaging-rubera p,.crossaging-consult p,.crossaging-section li{color:#686b73;font-size:15px;line-height:1.85;overflow-wrap:anywhere}.crossaging-hero-products{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:25px}.crossaging-hero-products article{display:grid;min-width:0;padding:14px 9px;border:1px solid #dde0e5;border-radius:14px;background:#fff}.crossaging-hero-products img{display:block;width:100%;max-width:180px;height:180px;margin:auto;object-fit:contain}.crossaging-hero-products strong{color:#555963;font-family:Georgia,serif;font-size:14px;overflow-wrap:anywhere}.crossaging-hero-products span{color:#777b84;font-size:11px}.crossaging-tone-lotion{box-shadow:inset 0 4px #bdcbd8}.crossaging-tone-essence{box-shadow:inset 0 4px #e3bdc7}.crossaging-tone-cream{box-shadow:inset 0 4px #cdd0d5}.crossaging-tone-plus{box-shadow:inset 0 4px #cfb479}.crossaging-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.crossaging-choice-grid article,.crossaging-mini-grid article,.crossaging-compare article,.crossaging-routines article{min-width:0;padding:17px;border:1px solid #dcdfe5;border-radius:13px;background:#fafbfc}.crossaging-choice-grid h3,.crossaging-mini-grid strong,.crossaging-compare h3,.crossaging-routines h3{margin:0 0 8px;color:#676b75;font-size:17px}.crossaging-choice-grid>article>strong{display:block;color:#a27e58;line-height:1.6}.crossaging-choice-grid p,.crossaging-mini-grid p{margin-bottom:0;font-size:13px}.crossaging-flow{display:grid;grid-template-columns:minmax(0,1fr) 34px minmax(0,1fr) 34px minmax(0,1fr);align-items:center;gap:8px}.crossaging-flow>div{display:grid;min-width:0;min-height:85px;place-content:center;gap:5px;padding:12px;border-radius:12px;background:linear-gradient(145deg,#f7f8fa,#edf0f4);text-align:center}.crossaging-flow small{color:#af8e65;font-weight:900}.crossaging-flow i,.crossaging-routines i{position:relative;width:25px;height:2px;margin:auto;background:#aaaeb8}.crossaging-flow i:after,.crossaging-routines i:after{position:absolute;top:-5px;right:0;width:10px;height:10px;border-top:2px solid #aaaeb8;border-right:2px solid #aaaeb8;content:"";transform:rotate(45deg)}.crossaging-product{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,.7fr);align-items:center;gap:22px}.crossaging-product>div{min-width:0}.crossaging-product-image{display:block;width:min(330px,100%);max-width:100%;height:330px;margin:auto;object-fit:contain}.crossaging-product h2{margin:0;color:#535761;font:500 clamp(28px,5.6vw,43px) Georgia,serif;line-height:1.2}.crossaging-product h3{margin:5px 0 14px;color:#6d7078;font-size:18px}.crossaging-product h4{margin:0 0 12px;color:#a47f67;font-size:19px;line-height:1.6}.crossaging-step{margin:0 0 6px!important;color:#aa8b61!important;font-size:12px!important;font-weight:950;letter-spacing:.13em}.crossaging-lotion{border-top:6px solid #b8c9d6;background:linear-gradient(145deg,#fff,#f0f5f8)}.crossaging-essence{border-top:6px solid #dfb6c1;background:linear-gradient(145deg,#fff,#fbf0f3)}.crossaging-cream{border-top:6px solid #c8cbd1}.crossaging-plus{border-top:6px solid #c8aa6e;background:linear-gradient(145deg,#fff,#faf4e8)}.crossaging-wide{grid-column:1/-1}.crossaging-mini-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:16px}.crossaging-mini-three{grid-template-columns:repeat(3,minmax(0,1fr))}.crossaging-environment{margin-top:14px;padding:13px;border-left:4px solid #c9aeb7;background:#ffffffb3}.crossaging-chip-list{display:flex;flex-wrap:wrap;gap:7px}.crossaging-chip-list span{padding:7px 10px;border-radius:999px;background:#f0f1f3;color:#62666f;font-size:12px;font-weight:800}.crossaging-compare,.crossaging-routines{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.crossaging-compare article:last-child{border-color:#cfb579;background:#fcf7ed}.crossaging-compare ul{padding-left:20px;color:#676b73;line-height:1.8}.crossaging-routines article>div{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.crossaging-routines span{display:inline-flex;align-items:center;gap:8px;color:#686b73;font-size:13px;font-weight:800}.crossaging-routines i{display:inline-block;width:18px}.crossaging-short{background:linear-gradient(145deg,#f8f9fa,#fff)}.crossaging-rubera{border-left:5px solid #a74b67;background:#fbf2f5}.crossaging-rubera a{display:inline-flex;min-height:44px;align-items:center;color:#8b3c58;font-weight:900}.crossaging-recommend ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:0;padding:0;list-style:none}.crossaging-recommend li{min-width:0;padding:12px 14px 12px 36px;border-radius:10px;background:#f3f4f6}.crossaging-recommend li:before{margin-left:-22px;margin-right:8px;color:#b08c63;content:"✓";font-weight:950}.crossaging-consult{border:2px solid #b9a079;background:linear-gradient(145deg,#fff,#f7f2ea);text-align:center}.crossaging-consult a{display:inline-flex;align-items:center;justify-content:center;min-height:48px;margin-top:8px;padding:11px 24px;border-radius:10px;background:#1f8f5f;color:#fff;font-size:16px;font-weight:900;text-decoration:none}@media(max-width:679px){.crossaging-hero-products{grid-template-columns:repeat(2,minmax(0,1fr))}.crossaging-hero-products img{height:160px}.crossaging-choice-grid,.crossaging-mini-three,.crossaging-flow{grid-template-columns:minmax(0,1fr)}.crossaging-flow i{width:2px;height:25px}.crossaging-flow i:after{top:auto;right:-5px;bottom:0;transform:rotate(135deg)}.crossaging-product{grid-template-columns:minmax(0,1fr)}.crossaging-product-image{height:280px}.crossaging-wide{grid-column:auto}}@media(max-width:419px){.crossaging-hero,.crossaging-section,.crossaging-product,.crossaging-rubera,.crossaging-consult{padding:18px 15px}.crossaging-hero h1{font-size:32px}.crossaging-hero-products,.crossaging-mini-grid,.crossaging-compare,.crossaging-routines,.crossaging-recommend ul{grid-template-columns:minmax(0,1fr)}.crossaging-product-image{height:240px}}.rubera-page{width:100%;min-width:0;max-width:100%;min-height:100vh;min-height:100dvh;padding:max(20px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(40px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));overflow-x:hidden;background:linear-gradient(150deg,#fffaf5,#fcecf1 44%,#f7f1e7);color:#452b32}.rubera-shell{width:min(940px,100%);min-width:0;max-width:100%;margin:auto}.rubera-back{display:inline-flex;align-items:center;min-height:44px;margin-bottom:12px;color:#8d3e58;font-size:14px;font-weight:850}.rubera-hero,.rubera-section,.rubera-process,.rubera-consult{position:relative;min-width:0;margin-bottom:18px;padding:clamp(20px,5vw,36px);overflow:hidden;border:1px solid #e7c8d1;border-radius:21px;background:#fffffff2;box-shadow:0 10px 28px #6f264112}.rubera-hero{display:grid;grid-template-columns:minmax(0,.9fr) minmax(300px,1.1fr);align-items:center;gap:clamp(18px,4vw,40px);border-top:7px solid #a8345b;background:linear-gradient(145deg,#fff 48%,#f9dfe8)}.rubera-hero:before,.rubera-hero:after{position:absolute;border:1px solid rgba(171,72,104,.18);border-radius:50%;background:#ffffff47;content:"";pointer-events:none}.rubera-hero:before{right:-60px;bottom:-70px;width:260px;height:260px}.rubera-hero:after{top:30px;right:38%;width:90px;height:90px}.rubera-hero-copy,.rubera-image-wrap{position:relative;z-index:1;min-width:0}.rubera-kicker{margin:0 0 4px;color:#b58b45;font-size:13px;font-weight:900;letter-spacing:.15em}.rubera-hero h1{margin:0;color:#8b284a;font-family:Georgia,serif;font-size:clamp(37px,7vw,64px);line-height:1.05;overflow-wrap:anywhere}.rubera-name{margin:8px 0 20px;color:#a23b5e;font-size:17px;font-weight:900;letter-spacing:.08em}.rubera-hero h2,.rubera-section h2,.rubera-process h2,.rubera-consult h2{margin:0 0 14px;color:#762d47;font-size:clamp(21px,4.8vw,28px);line-height:1.5}.rubera-hero p,.rubera-section p,.rubera-process p,.rubera-consult p,.rubera-section li{color:#65545a;font-size:15px;line-height:1.85;overflow-wrap:anywhere}.rubera-image-wrap img{display:block;width:min(440px,100%);max-width:100%;height:auto;max-height:440px;margin:auto;border:0;background:transparent;box-shadow:none;object-fit:contain}.rubera-clean{border-left:6px solid #a83b61}.rubera-feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.rubera-feature-grid article,.rubera-card-grid article,.rubera-step-grid article{min-width:0;padding:17px;border:1px solid #e7c5cf;border-radius:13px;background:#fffafc}.rubera-feature-grid article{position:relative;overflow:hidden}.rubera-feature-grid article>span{position:absolute;top:-15px;right:-12px;width:60px;height:60px;border:1px solid rgba(174,60,95,.18);border-radius:50%;background:#ffffffa6}.rubera-feature-grid h3,.rubera-card-grid h3{position:relative;margin:0 0 8px;color:#8c3553;font-size:17px}.rubera-feature-grid p,.rubera-card-grid p{position:relative;margin:0;font-size:14px}.rubera-card-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.rubera-process{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:22px;border:2px solid #c9a15b;background:linear-gradient(135deg,#fff8eb,#fff)}.rubera-gem{display:grid;width:120px;height:105px;place-items:center;background:linear-gradient(145deg,#9c3157,#c26480);color:#f8dca2;font-size:48px;clip-path:polygon(25% 6.7%,75% 6.7%,100% 50%,75% 93.3%,25% 93.3%,0 50%)}.rubera-tulle{border-top:5px solid #c7a157}.rubera-step-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.rubera-step-grid strong{display:grid;width:34px;height:34px;place-items:center;border-radius:50%;background:#9b3658;color:#fff}.rubera-step-grid p{margin-bottom:0;font-size:14px}.rubera-foam-flow,.rubera-care-flow{display:flex;align-items:center;justify-content:center;gap:12px;min-width:0;margin-top:20px;padding:18px;border-radius:14px;background:#fdf1f5}.rubera-foam-flow>div,.rubera-care-flow span{display:grid;min-width:90px;min-height:62px;place-items:center;padding:10px;border-radius:50%;background:#fff;color:#84314e;font-weight:900;text-align:center}.rubera-foam-flow i,.rubera-care-flow i{position:relative;flex-shrink:0;width:26px;height:2px;background:#b05a75}.rubera-foam-flow i:after,.rubera-care-flow i:after{position:absolute;top:-5px;right:0;width:10px;height:10px;border-top:2px solid #b05a75;border-right:2px solid #b05a75;content:"";transform:rotate(45deg)}.rubera-bubbles{position:relative}.rubera-bubbles span{position:absolute;border:1px solid #e2aabd;border-radius:50%;background:#fffc}.rubera-bubbles span:nth-child(1){top:-10px;left:10px;width:20px;height:20px}.rubera-bubbles span:nth-child(2){top:-17px;right:12px;width:26px;height:26px}.rubera-bubbles span:nth-child(3){top:0;right:-5px;width:15px;height:15px}.rubera-aftercare{background:linear-gradient(140deg,#fff,#f9e8ee)}.rubera-care-flow span{min-width:105px;border-radius:11px}.rubera-recommend ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:0;padding:0;list-style:none}.rubera-recommend li{min-width:0;padding:12px 14px 12px 36px;border-radius:10px;background:#fdf1f5}.rubera-recommend li:before{margin-left:-22px;margin-right:8px;color:#a03a5d;content:"✓";font-weight:950}.rubera-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:18px}.rubera-facts strong{display:grid;min-height:62px;place-items:center;padding:10px;border-radius:11px;background:#f5e6eb;color:#7b3049;text-align:center}.rubera-facts strong:nth-child(2){background:#8e3151;color:#fff;font-size:20px}.rubera-consult{border:2px solid #a74665;background:linear-gradient(145deg,#fff,#f8e5eb);text-align:center}.rubera-consult a{display:inline-flex;align-items:center;justify-content:center;min-height:48px;margin-top:8px;padding:11px 24px;border-radius:10px;background:#1f8f5f;color:#fff;font-size:16px;font-weight:900;text-decoration:none}@media(max-width:679px){.rubera-hero{grid-template-columns:minmax(0,1fr)}.rubera-image-wrap img{width:min(390px,100%);max-height:360px}.rubera-feature-grid,.rubera-card-grid,.rubera-step-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.rubera-care-flow{flex-wrap:wrap}.rubera-care-flow i{width:18px}}@media(max-width:419px){.rubera-hero,.rubera-section,.rubera-process,.rubera-consult{padding:18px 15px}.rubera-hero h1{font-size:35px}.rubera-image-wrap img{max-height:300px}.rubera-feature-grid,.rubera-card-grid,.rubera-step-grid,.rubera-recommend ul,.rubera-facts,.rubera-process{grid-template-columns:minmax(0,1fr)}.rubera-gem{width:92px;height:80px;margin:auto}.rubera-foam-flow{flex-direction:column}.rubera-foam-flow i{width:2px;height:24px}.rubera-foam-flow i:after{top:auto;right:-5px;bottom:0;transform:rotate(135deg)}}.hair-care-page{width:100%;min-width:0;max-width:100%;min-height:100vh;min-height:100dvh;padding:max(20px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(40px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));overflow-x:hidden;background:linear-gradient(135deg,#ececec,#fff 45%,#e9e5dc);color:#262626}.hair-care-shell{width:min(960px,100%);min-width:0;max-width:100%;margin:auto}.hair-care-back{display:inline-flex;align-items:center;min-height:44px;margin-bottom:12px;color:#725c2d;font-size:14px;font-weight:850}.hair-care-hero,.hair-care-section,.hair-care-product,.hair-care-scalp-link,.hair-care-consult{min-width:0;margin-bottom:18px;padding:clamp(20px,5vw,36px);overflow:hidden;border:1px solid #d2c7ad;border-radius:21px;background:#fff;box-shadow:0 10px 28px #18181812}.hair-care-title{max-width:860px;margin:0 auto 24px;text-align:center}.hair-care-title h1{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.12em .24em;min-width:0;margin:0 0 17px;color:#1e1e1e;font-size:clamp(27px,5.5vw,52px);line-height:1.2}.hair-care-title h1 span{white-space:nowrap}.hair-care-title h1 b{flex-shrink:0;color:#b49145}.hair-care-title h2,.hair-care-section h2,.hair-care-product>h2,.hair-care-scalp-link h2,.hair-care-consult h2{margin:0 0 14px;font-size:clamp(21px,4.8vw,28px);line-height:1.5}.hair-care-title p,.hair-care-section p,.hair-care-product p,.hair-care-scalp-link p,.hair-care-consult p,.hair-care-section li{color:#565656;font-size:15px;line-height:1.85;overflow-wrap:anywhere}.hair-care-hero-products{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));min-width:0;overflow:hidden;border:1px solid #b9974e;border-radius:17px}.hair-care-hero-products article{min-width:0;padding:clamp(18px,4vw,30px);text-align:center}.hair-care-black{background:linear-gradient(145deg,#0e0e0e,#333);color:#fff}.hair-care-white{background:linear-gradient(145deg,#fff,#ededed);color:#252525}.hair-care-hero-products article>span{color:#c9a95d;font-size:13px;font-weight:950;letter-spacing:.2em}.hair-care-hero-products h2{margin:8px 0 3px;font:600 clamp(25px,5vw,37px) Georgia,serif}.hair-care-hero-products p{margin:0 0 15px;color:inherit;font-weight:850}.hair-care-product-image{display:block;width:min(300px,100%);max-width:100%;height:clamp(220px,32vw,340px);margin:auto;border:0;background:transparent;box-shadow:none;object-fit:contain}.hair-care-refill img{display:block;width:min(560px,100%);max-width:100%;height:auto;margin:18px auto;object-fit:contain}.hair-care-two-step{display:grid;grid-template-columns:minmax(0,1fr) 42px minmax(0,1fr);align-items:stretch;gap:12px}.hair-care-two-step article{min-width:0;padding:20px;border-radius:14px;background:#f2f2f2}.hair-care-two-step article:first-child{background:#222;color:#fff}.hair-care-two-step article:first-child p{color:#e8e8e8}.hair-care-two-step strong{color:#b5954f;font-size:22px}.hair-care-two-step i,.hair-care-flow i{position:relative;align-self:center;width:28px;height:2px;margin:auto;background:#ae8b42}.hair-care-two-step i:after,.hair-care-flow i:after{position:absolute;top:-5px;right:0;width:10px;height:10px;border-top:2px solid #ae8b42;border-right:2px solid #ae8b42;content:"";transform:rotate(45deg)}.hair-care-product-black{border-color:#202020;background:linear-gradient(145deg,#111,#292929);color:#fff}.hair-care-product-black>p,.hair-care-product-black>h3{color:#e9e9e9}.hair-care-product-white{border-top:6px solid #d1b46c}.hair-care-label{margin:0 0 5px!important;color:#c3a35b!important;font-size:13px!important;font-weight:950;letter-spacing:.18em}.hair-care-product>h2{font:600 clamp(31px,6vw,48px) Georgia,serif}.hair-care-product>h3{font-size:21px;line-height:1.55}.hair-care-ingredient-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;margin-top:18px}.hair-care-ingredient-grid article,.hair-care-repair,.hair-care-methods article{min-width:0;padding:17px;border:1px solid #d4bb7a;border-radius:13px;background:#fff;color:#292929}.hair-care-ingredient-grid h3,.hair-care-repair h3,.hair-care-methods h3{margin:0 0 8px;color:#7e632a;font-size:17px}.hair-care-ingredient-grid p,.hair-care-repair p,.hair-care-methods p{margin-bottom:0;color:#565656;font-size:14px}.hair-care-repair{margin-top:12px;background:#f6f2e8}.hair-care-flow{display:grid;grid-template-columns:minmax(0,1fr) 34px minmax(0,1fr) 34px minmax(0,1fr);align-items:center;gap:7px;margin:18px 0}.hair-care-flow div{display:grid;min-width:0;min-height:85px;place-content:center;gap:4px;padding:12px;border-radius:12px;background:#efefef;text-align:center}.hair-care-flow div:first-child{background:#202020;color:#fff}.hair-care-flow strong{color:#ad8a41}.hair-care-flow span{font-size:12px;font-weight:800}.hair-care-recommend ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:0;padding:0;list-style:none}.hair-care-recommend li{min-width:0;padding:12px 14px 12px 36px;border-radius:10px;background:#f3f0e8}.hair-care-recommend li:before{margin-left:-22px;margin-right:8px;color:#9a7933;content:"✓";font-weight:950}.hair-care-methods{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.hair-care-scalp-link{border-left:6px solid #202020;background:#f5f2e9}.hair-care-scalp-link a{display:inline-flex;min-height:44px;align-items:center;color:#72571e;font-weight:900}.hair-care-consult{border:2px solid #ac8a43;background:linear-gradient(135deg,#222 0 8px,#fff 8px 98%,#ddd 98%);text-align:center}.hair-care-consult a{display:inline-flex;align-items:center;justify-content:center;min-height:48px;margin-top:8px;padding:11px 24px;border-radius:10px;background:#1f8f5f;color:#fff;font-size:16px;font-weight:900;text-decoration:none}@media(max-width:679px){.hair-care-hero-products,.hair-care-ingredient-grid,.hair-care-methods,.hair-care-two-step,.hair-care-flow{grid-template-columns:minmax(0,1fr)}.hair-care-two-step i,.hair-care-flow i{width:2px;height:28px}.hair-care-two-step i:after,.hair-care-flow i:after{top:auto;right:-5px;bottom:0;transform:rotate(135deg)}}@media(max-width:419px){.hair-care-hero,.hair-care-section,.hair-care-product,.hair-care-scalp-link,.hair-care-consult{padding:18px 15px}.hair-care-title h1{flex-direction:column;font-size:clamp(26px,8.5vw,32px)}.hair-care-recommend ul{grid-template-columns:minmax(0,1fr)}.hair-care-product-image{height:240px}}.scalp-somacy-page{width:100%;min-width:0;max-width:100%;min-height:100vh;min-height:100dvh;padding:max(20px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(40px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));overflow-x:hidden;background:linear-gradient(145deg,#f8f6f0,#fff 38%,#eeeae1);color:#242424}.scalp-somacy-shell{width:min(940px,100%);min-width:0;max-width:100%;margin:0 auto}.scalp-somacy-back{display:inline-flex;align-items:center;min-height:44px;margin-bottom:12px;color:#705c30;font-size:14px;font-weight:850}.scalp-somacy-hero,.scalp-somacy-section,.scalp-somacy-dark,.scalp-somacy-research,.scalp-somacy-consult{position:relative;min-width:0;margin-bottom:18px;padding:clamp(20px,5vw,36px);overflow:hidden;border:1px solid #d9cfb7;border-radius:21px;background:#fffffff5;box-shadow:0 10px 28px #19191912}.scalp-somacy-hero{display:grid;grid-template-columns:minmax(0,.9fr) minmax(300px,1.1fr);align-items:center;gap:clamp(18px,4vw,40px);border-top:7px solid #202020;background:linear-gradient(140deg,#fff 48%,#ede8dd)}.scalp-somacy-hero:before,.scalp-somacy-hero:after{position:absolute;background:linear-gradient(90deg,transparent,rgba(183,151,79,.26),transparent);content:"";pointer-events:none}.scalp-somacy-hero:before{top:25%;right:-10%;width:62%;height:1px}.scalp-somacy-hero:after{top:-10%;right:28%;width:1px;height:55%}.scalp-somacy-hero-copy,.scalp-somacy-image-wrap{position:relative;z-index:1;min-width:0}.scalp-somacy-kicker{margin:0 0 4px;color:#9c7b35;font-size:14px;font-weight:900;letter-spacing:.15em}.scalp-somacy-hero h1{margin:0;color:#161616;font-family:Georgia,serif;font-size:clamp(38px,7vw,65px);font-weight:600;line-height:1.05;overflow-wrap:anywhere}.scalp-somacy-name{margin:8px 0 20px;color:#8b713c;font-size:17px;font-weight:900;letter-spacing:.08em}.scalp-somacy-hero h2,.scalp-somacy-section h2,.scalp-somacy-dark h2,.scalp-somacy-research h2,.scalp-somacy-consult h2{margin:0 0 14px;font-size:clamp(21px,4.8vw,28px);line-height:1.5}.scalp-somacy-hero p,.scalp-somacy-section p,.scalp-somacy-dark p,.scalp-somacy-research p,.scalp-somacy-consult p,.scalp-somacy-section li{color:#55524c;font-size:15px;line-height:1.85;overflow-wrap:anywhere}.scalp-somacy-image-wrap img{display:block;width:min(440px,100%);max-width:100%;height:auto;max-height:440px;margin:auto;border:0;background:transparent;box-shadow:none;object-fit:contain}.scalp-somacy-dark{border-color:#2b2b2b;background:linear-gradient(145deg,#151515,#303030);color:#fff}.scalp-somacy-dark h2{color:#f7efdc}.scalp-somacy-grid{display:grid;gap:11px}.scalp-somacy-care-grid,.scalp-somacy-ingredient-grid,.scalp-somacy-plant-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.scalp-somacy-grid article{min-width:0;padding:17px;border:1px solid #d9c795;border-radius:13px;background:#fff}.scalp-somacy-care-grid article{background:#242424}.scalp-somacy-care-grid span{color:#d7b96b;font:700 18px Georgia,serif}.scalp-somacy-care-grid p{margin-bottom:0;color:#eee9de}.scalp-somacy-grid h3{margin:0 0 7px;color:#7c622c;font-size:17px}.scalp-somacy-grid article p{margin:0;font-size:14px}.scalp-somacy-research{border-left:6px solid #b28d42;background:#faf6eb}.scalp-somacy-research small{display:block;margin-top:14px;padding-top:12px;border-top:1px solid #ddcfad;color:#685f4d;font-size:12px;line-height:1.7}.scalp-somacy-feature-grid,.scalp-somacy-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:16px}.scalp-somacy-feature-grid span,.scalp-somacy-facts strong{display:grid;min-width:0;min-height:64px;place-items:center;padding:11px;border-radius:11px;background:#f4f0e6;color:#4f4532;font-size:13px;font-weight:850;text-align:center;overflow-wrap:anywhere}.scalp-somacy-nozzle{border-top:5px solid #242424}.scalp-somacy-facts strong:nth-child(2){background:#242424;color:#f1d98f;font-size:22px}.scalp-somacy-usage-guide{width:min(780px,100%);min-width:0;margin:20px auto 0;padding:clamp(5px,1.5vw,10px);border-radius:14px;background:#f3f1ec}.scalp-somacy-usage-guide img{display:block;width:100%;max-width:100%;height:auto;margin:0 auto;border:0;box-shadow:none;object-fit:contain}.scalp-somacy-usage-note{margin-top:12px!important;color:#665f50!important;font-size:13px!important;text-align:center}.scalp-somacy-recommend ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:0;padding:0;list-style:none}.scalp-somacy-recommend li{min-width:0;padding:12px 14px 12px 36px;border-radius:10px;background:#f5f1e7}.scalp-somacy-recommend li:before{margin-left:-22px;margin-right:8px;color:#a07c32;content:"✓";font-weight:950}.scalp-somacy-consult{border:2px solid #a4833f;background:linear-gradient(145deg,#fff,#f6f0df);text-align:center}.scalp-somacy-consult a{display:inline-flex;align-items:center;justify-content:center;min-height:48px;margin-top:8px;padding:11px 24px;border-radius:10px;background:#1f8f5f;color:#fff;font-size:16px;font-weight:900;text-decoration:none}@media(max-width:679px){.scalp-somacy-hero{grid-template-columns:minmax(0,1fr)}.scalp-somacy-image-wrap img{width:min(390px,100%);max-height:360px}.scalp-somacy-feature-grid,.scalp-somacy-facts{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:419px){.scalp-somacy-hero,.scalp-somacy-section,.scalp-somacy-dark,.scalp-somacy-research,.scalp-somacy-consult{padding:18px 15px}.scalp-somacy-hero h1{font-size:36px}.scalp-somacy-image-wrap img{max-height:300px}.scalp-somacy-care-grid,.scalp-somacy-ingredient-grid,.scalp-somacy-plant-grid,.scalp-somacy-feature-grid,.scalp-somacy-facts,.scalp-somacy-recommend ul{grid-template-columns:minmax(0,1fr)}}.miracle-wave-page{width:100%;min-width:0;max-width:100%;min-height:100vh;min-height:100dvh;padding:max(20px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(40px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));overflow-x:hidden;background:linear-gradient(180deg,#f4f7ed,#fffdf7 38%,#f0f7ec);color:#25372d}.miracle-wave-shell{width:min(940px,100%);min-width:0;max-width:100%;margin:0 auto}.miracle-wave-back{display:inline-flex;align-items:center;min-height:44px;margin:0 0 12px;color:#23603b;font-size:14px;font-weight:850}.miracle-wave-hero,.miracle-wave-section,.miracle-wave-dual article,.miracle-wave-principle,.miracle-wave-concept,.miracle-wave-caution,.miracle-wave-consult{position:relative;min-width:0;margin-bottom:18px;padding:clamp(20px,5vw,36px);overflow:hidden;border:1px solid #cfe0c9;border-radius:22px;background:#fffffff2;box-shadow:0 10px 28px #27553212}.miracle-wave-hero{display:grid;grid-template-columns:minmax(0,.9fr) minmax(300px,1.1fr);align-items:center;gap:clamp(18px,4vw,42px);border-top:7px solid #2f7d49;background:linear-gradient(140deg,#fff 48%,#e9f4df)}.miracle-wave-hero:before,.miracle-wave-hero:after{position:absolute;border-radius:50% 10%;background:linear-gradient(135deg,#56983f24,#a6cc600a);content:"";pointer-events:none;transform:rotate(-18deg)}.miracle-wave-hero:before{right:-90px;bottom:-75px;width:430px;height:210px}.miracle-wave-hero:after{top:-70px;right:30%;width:220px;height:100px}.miracle-wave-hero-copy,.miracle-wave-image-wrap{position:relative;z-index:1;min-width:0}.miracle-wave-kicker{margin:0 0 4px;color:#57903a;font-size:14px;font-weight:900;letter-spacing:.14em}.miracle-wave-hero h1{margin:0;color:#155333;font-size:clamp(34px,7vw,62px);line-height:1.05;letter-spacing:.03em;overflow-wrap:anywhere}.miracle-wave-name{margin:7px 0 18px;color:#4c8a3b;font-size:17px;font-weight:900;letter-spacing:.08em}.miracle-wave-hero h2,.miracle-wave-section h2,.miracle-wave-dual h2,.miracle-wave-principle h2,.miracle-wave-consult h2{margin:0 0 14px;color:#184c31;font-size:clamp(21px,4.8vw,28px);line-height:1.5}.miracle-wave-hero p,.miracle-wave-section p,.miracle-wave-dual p,.miracle-wave-principle p,.miracle-wave-caution p,.miracle-wave-consult p,.miracle-wave-section li{color:#4c5d53;font-size:15px;line-height:1.85;overflow-wrap:anywhere}.miracle-wave-image-wrap img{display:block;width:min(430px,100%);max-width:100%;height:auto;max-height:440px;margin:0 auto;border:0;background:transparent;box-shadow:none;object-fit:contain}.miracle-wave-dual{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.miracle-wave-dual article{margin:0}.miracle-wave-dual article:first-child{border-top:5px solid #2c7650}.miracle-wave-dual article:last-child{border-top:5px solid #7eae47}.miracle-wave-principle{border:2px solid #72a351;background:linear-gradient(135deg,#eff7e8,#fff);text-align:center}.miracle-wave-concept{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(150px,.8fr) auto minmax(0,1fr);align-items:center;gap:12px;background:linear-gradient(135deg,#e6f2df,#fff,#eef6df);text-align:center}.miracle-wave-concept>div{display:grid;gap:7px;min-width:0;padding:18px 12px;border-radius:50% 42%;background:#f7fbf3}.miracle-wave-concept strong{color:#22613c;font-size:24px}.miracle-wave-concept span{color:#4c6d58;font-weight:850}.miracle-wave-concept>b{color:#7ca34f;font-size:28px}.miracle-wave-concept .miracle-wave-concept-center{background:#367c4c;color:#fff;font-size:19px;font-weight:900}.miracle-wave-concept-center small{font-size:12px;font-weight:750;line-height:1.6}.miracle-wave-flavor{border-left:6px solid #91b744}.miracle-wave-facts,.miracle-wave-drinks{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-top:17px}.miracle-wave-facts>*,.miracle-wave-drinks span{display:grid;min-width:0;min-height:64px;place-items:center;padding:10px;border-radius:12px;background:#eef6e8;color:#315e3d;font-size:13px;font-weight:850;text-align:center;overflow-wrap:anywhere}.miracle-wave-facts strong{background:#dceecf;font-size:16px}.miracle-wave-note{margin-top:14px;font-size:13px!important}.miracle-wave-start{border-left:6px solid #88ad54}.miracle-wave-caution{border:2px solid #c69742;background:#fff8e7}.miracle-wave-caution strong{color:#725013;font-size:18px}.miracle-wave-caution p{margin-bottom:0;color:#665332;font-weight:750}.miracle-wave-recommend ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:0;padding:0;list-style:none}.miracle-wave-recommend li{min-width:0;padding:12px 14px 12px 36px;border-radius:11px;background:#f0f7eb}.miracle-wave-recommend li:before{margin-left:-22px;margin-right:8px;color:#55943f;content:"✓";font-weight:950}.miracle-wave-consult{border:2px solid #4d945a;background:linear-gradient(145deg,#f5faef,#e5f3df);text-align:center}.miracle-wave-consult a{display:inline-flex;align-items:center;justify-content:center;min-height:48px;margin-top:8px;padding:11px 24px;border-radius:11px;background:#1f8f5f;color:#fff;font-size:16px;font-weight:900;text-decoration:none}@media(max-width:679px){.miracle-wave-hero,.miracle-wave-dual{grid-template-columns:minmax(0,1fr)}.miracle-wave-image-wrap img{width:min(390px,100%);max-height:360px}.miracle-wave-concept{grid-template-columns:minmax(0,1fr)}.miracle-wave-concept>b{transform:rotate(90deg)}.miracle-wave-facts,.miracle-wave-drinks,.miracle-wave-recommend ul{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:419px){.miracle-wave-hero,.miracle-wave-section,.miracle-wave-dual article,.miracle-wave-principle,.miracle-wave-concept,.miracle-wave-caution,.miracle-wave-consult{padding:18px 15px}.miracle-wave-hero h1{font-size:34px}.miracle-wave-image-wrap img{max-height:300px}.miracle-wave-facts,.miracle-wave-drinks,.miracle-wave-recommend ul{grid-template-columns:minmax(0,1fr)}}*{box-sizing:border-box}body{margin:0}body.staff-app{min-width:900px}body.staff-app.qr-checkin-app{min-width:0}@media(max-width:899px){body.staff-app{min-width:0}}a{color:#216749;font-weight:750;text-decoration:none}a:hover{text-decoration:underline}button,input{font:inherit}.search-page{width:min(1080px,calc(100% - 64px));margin:48px auto}.page-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:28px}.header-actions{display:flex;align-items:center;gap:16px}h1{margin:4px 0 8px;font-size:32px}.eyebrow{margin:0;color:#216749;font-weight:800;letter-spacing:.07em}.lead{margin:0;color:#52615a}.demo-badge{padding:8px 12px;border:1px solid #b8cbbf;border-radius:999px;color:#39624f;background:#f7fbf8;font-size:13px;font-weight:700}.backup-badge{display:grid;gap:2px;padding:7px 10px;border:1px solid #c7c7c7;border-radius:8px;background:#f2f2f2;color:#555;font-size:12px;font-weight:750}.backup-badge.normal{border-color:#9bc5aa;background:#eaf6ee;color:#235f3f}.backup-badge.needs_check{border-color:#e0b34d;background:#fff6df;color:#7a5b00}.backup-badge.abnormal{border-color:#e2a0a0;background:#fdecec;color:#8a2323}.backup-badge.unverified{border-color:#c7c7c7;background:#f2f2f2;color:#555}.backup-badge small{font-size:10px;font-weight:600}.login-page{display:grid;min-height:100vh;place-items:center;padding:24px}.login-card{width:min(420px,100%);padding:30px;border:1px solid #d6e2da;border-radius:14px;background:#fff;box-shadow:0 10px 35px #1d42301a}.login-card form{display:grid;gap:18px;margin-top:24px}.login-card label{display:grid;gap:7px;font-weight:750}.login-card input,.login-card select{min-height:46px;padding:8px 10px;border:1px solid #aebdb4;border-radius:7px}.login-card .remember-login{display:flex;grid-template-columns:none;flex-direction:row;align-items:flex-start;gap:10px;font-weight:700}.login-card .remember-login input{width:20px;min-height:20px;margin:2px 0 0}.login-card .remember-login span{display:grid;gap:2px}.login-card .remember-login small{color:#68766f;font-weight:500}.session-page{width:min(960px,calc(100% - 48px));margin:36px auto 64px}.session-group{margin-top:22px;padding:20px;border:1px solid #d6e2da;border-radius:14px;background:#fff}.session-group-heading,.session-card{display:flex;align-items:center;justify-content:space-between;gap:20px}.session-group-heading h2{margin:0}.session-list{display:grid;gap:10px;margin-top:16px}.session-card{padding:16px;border:1px solid #dce5df;border-radius:10px;background:#f9fcfa}.session-card strong{font-size:17px}.current-session{margin-left:10px;padding:3px 7px;border-radius:999px;background:#dff1e6;color:#216749;font-size:11px;font-weight:800}.session-card dl{display:flex;gap:22px;margin:10px 0 0}.session-card dt{color:#68766f;font-size:11px;font-weight:700}.session-card dd{margin:2px 0 0;font-size:13px}.danger-button{padding:8px 12px;border:1px solid #b94a4a;border-radius:7px;background:#fff;color:#9a3030;font-weight:800;cursor:pointer}.line-link-group-note{margin:0 0 12px;font-size:12px;font-weight:700;color:#68766f}.line-link-active-registry{margin-top:28px;padding-top:20px;border-top:1px solid #d6e2da}.line-link-active-registry-toggle{padding:10px 16px;border:1px solid #35795a;border-radius:8px;background:#fff;color:#216749;font-weight:800;cursor:pointer}.line-link-active-registry-body{margin-top:16px}.line-link-active-summary{display:flex;flex-wrap:wrap;gap:20px;margin:0 0 16px;padding:14px 16px;border:1px solid #d6e2da;border-radius:10px;background:#f6faf7}.line-link-active-summary div{display:flex;flex-direction:column;gap:2px;min-width:96px}.line-link-active-summary dt{margin:0;font-size:12px;font-weight:700;color:#68766f}.line-link-active-summary dd{margin:0;font-size:20px;font-weight:800;color:#17221d}.line-link-active-filter-label{display:block;margin-bottom:6px;font-size:13px;font-weight:700}.line-link-active-filter{width:100%;max-width:320px;padding:8px 10px;border:1px solid #b9c7bf;border-radius:8px;margin-bottom:14px;font-size:14px}.line-link-active-table{width:100%;border-collapse:collapse}.line-link-active-table th,.line-link-active-table td{padding:8px 10px;border-bottom:1px solid #e1e8e3;text-align:left;font-size:13px}.line-link-active-table th{color:#68766f;font-weight:700}.search-panel{padding:24px;border:1px solid #d6e2da;border-radius:14px;background:#fff;box-shadow:0 8px 28px #1d423012}.search-panel label{display:block;margin-bottom:10px;font-weight:800}.search-box{display:flex;align-items:center;min-height:58px;padding:0 16px;border:2px solid #35795a;border-radius:10px;background:#fff}.search-box>span:first-child{margin-right:10px;color:#35795a;font-size:28px}.search-box input{flex:1;min-width:0;border:0;outline:0;color:#17221d;font-size:22px;font-weight:650}.search-box input::placeholder{color:#99a59f;font-weight:500}.mode-label{padding:5px 9px;border-radius:6px;background:#e8f3ec;color:#216749;font-size:13px;font-weight:800}.hint{margin:10px 0 0;color:#65736c;font-size:13px}.results{margin-top:18px;overflow:hidden;border:1px solid #d6e2da;border-radius:12px;background:#fff}.empty-state{padding:32px;color:#68766f;text-align:center}.patient-row{display:grid;grid-template-columns:100px 1fr auto auto;align-items:center;width:100%;min-height:66px;padding:0 20px;border:0;border-bottom:1px solid #e5ece7;background:#fff;color:inherit;text-align:left;cursor:pointer}.patient-row:last-child{border-bottom:0}.patient-row:hover,.patient-row:focus-visible,.patient-row.is-active{outline:0;background:#f0f8f3;box-shadow:inset 4px 0 #35795a}.patient-number{color:#216749;font-size:20px;font-weight:850;font-variant-numeric:tabular-nums}.patient-name{font-size:18px;font-weight:700}.enter-guide{margin-right:18px;color:#738078;font-size:12px}.select-mark{color:#35795a;font-weight:750}.selected-card{display:flex;align-items:center;justify-content:space-between;margin-top:20px;padding:20px 24px;border:2px solid #35795a;border-radius:12px;background:#eaf5ee}.selected-caption{display:block;margin-bottom:3px;color:#52695d;font-size:12px;font-weight:700}.selected-card strong{font-size:22px}.selected-card button{padding:8px 12px;border:1px solid #98b5a4;border-radius:7px;background:#fff;color:#265b43;cursor:pointer}.patient-management-page{width:min(1180px,calc(100% - 48px));margin:32px auto 64px}.management-grid{display:grid;grid-template-columns:minmax(0,1fr);align-items:start;gap:24px}@media(min-width:1100px){.management-grid{grid-template-columns:minmax(0,2.1fr) minmax(300px,1fr)}}.search-panel.compact{padding:18px}.management-search label:first-child{display:block;margin-bottom:8px;font-weight:800}.search-controls{display:flex;gap:8px}.search-controls input{flex:1;min-width:0;padding:11px 13px;border:2px solid #35795a;border-radius:8px;outline:0;font-size:18px}.search-controls button,.primary-button{border:0;border-radius:8px;background:#26704d;color:#fff;font-weight:800;cursor:pointer}.search-controls button{padding:0 22px}.checkbox-label{display:flex!important;align-items:center;gap:7px;margin:10px 0 0!important;color:#56665e;font-size:13px;font-weight:650!important}.management-results{margin-top:14px;overflow:hidden;border:1px solid #d3ded7;border-radius:11px;background:#fff}.result-heading{display:flex;justify-content:space-between;padding:13px 17px;border-bottom:1px solid #dce5df;background:#f7faf8}.result-heading span{color:#66736c}.managed-patient{border-bottom:1px solid #e1e8e3}.managed-patient:last-child{border-bottom:0}.managed-patient>summary{display:grid;grid-template-columns:90px minmax(140px,1fr) auto auto;align-items:center;gap:10px;min-height:62px;padding:0 18px;cursor:pointer;list-style:none}.managed-patient>summary::-webkit-details-marker{display:none}.managed-patient>summary:after{content:"詳細・編集 ▾";color:#397357;font-size:12px;font-weight:800}.managed-patient[open]>summary{background:#eff7f2}.managed-patient[open]>summary:after{content:"閉じる ▴"}.managed-patient.is-inactive>summary{background:#f3f3f3;color:#727772}.status-badge,.line-ready,.line-missing{padding:4px 7px;border-radius:5px;font-size:11px;font-weight:800;white-space:nowrap}.status-badge{background:#666;color:#fff}.line-ready{background:#e4f2e9;color:#26704d}.line-missing{background:#fff1d8;color:#8a5a0c}.patient-detail{display:flex;flex-direction:column;gap:14px;padding:18px;border-top:1px solid #dce5df;background:#f5f8f6}.patient-section-card{width:100%;margin:0;padding:18px;border:1px solid #d3ded7;border-radius:10px;background:#fff;box-sizing:border-box}.patient-section-title{margin:0 0 14px;color:#304b3d;font-size:16px;font-weight:850;line-height:1.4}.patient-section-subtitle{margin:18px 0 6px;color:#43584d;font-size:14px;font-weight:800}.patient-detail dl{display:flex;gap:26px;margin:0 0 18px}.patient-detail>.patient-section-card{margin-top:0;padding:18px;border:1px solid #d3ded7;border-radius:10px;background:#fff}.patient-detail dl div{min-width:120px}.patient-detail dt{color:#68756e;font-size:12px;font-weight:700}.patient-detail dd{margin:3px 0 0;font-weight:700}.patient-edit-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.patient-edit-form label,.patient-form label{display:flex;flex-direction:column;gap:5px;color:#3d4b44;font-size:13px;font-weight:800}.patient-edit-form input,.patient-form input{width:100%;padding:10px 11px;border:1px solid #b9c7bf;border-radius:7px;background:#fff;color:#17221d}.patient-edit-form input:focus,.patient-form input:focus{outline:2px solid #6ca486;outline-offset:1px}.patient-edit-form input:disabled{background:#edf0ee;color:#626b66}.birth-date-control{display:grid;grid-template-columns:78px minmax(0,1fr) 42px;gap:5px}.patient-edit-form .birth-date-control select,.patient-form .birth-date-control select{min-width:0;padding:8px 4px;border:1px solid #b9c7bf;border-radius:7px;background:#fff;color:#17221d;font:inherit}.patient-edit-form .birth-date-calendar,.patient-form .birth-date-calendar{min-width:42px;padding:8px 5px;color:transparent;cursor:pointer}.birth-date-calendar::-webkit-calendar-picker-indicator{width:22px;height:22px;margin:auto;cursor:pointer;opacity:.8}.birth-date-mode-message{color:#8a5a0c!important;font-size:11px;line-height:1.4}.patient-edit-form small{color:#7a837e;font-weight:500}.patient-guidance-setting{margin:0}.patient-guidance-setting h3{margin:0 0 14px}.patient-guidance-setting form,.patient-guidance-setting label{display:grid;gap:8px}.patient-guidance-setting select{width:100%;max-width:360px;padding:10px 11px;border:1px solid #b9c7bf;border-radius:7px;background:#fff;color:#17221d}.primary-button{min-height:42px;padding:9px 16px;align-self:end}.primary-button.large{width:100%;min-height:50px;margin-top:4px;font-size:16px}.primary-button:disabled{opacity:.6;cursor:wait}.status-action{margin:0;text-align:left}.status-action button{display:block;margin-left:auto}.patient-management-actions .patient-admin-tools{margin-top:18px;padding-top:16px;border-top:1px solid #e2d6d6}.danger-button,.secondary-button{padding:8px 12px;border-radius:7px;background:#fff;font-weight:750;cursor:pointer}.danger-button{border:1px solid #c48282;color:#973d3d}.patient-admin-tools{margin:0}.patient-admin-tools>h3{margin:0 0 14px}.patient-admin-tools>details{margin-bottom:12px}.patient-admin-tools>details>summary{width:fit-content;color:#7b5555;font-weight:750;cursor:pointer}.patient-number-correction{display:grid;grid-template-columns:minmax(150px,1fr) minmax(150px,1fr);gap:10px;max-width:520px;margin:12px 0}.patient-number-correction label{display:grid;gap:4px;font-size:12px;font-weight:700}.patient-number-correction input{min-width:0;padding:8px;border:1px solid #cfd8d2;border-radius:7px}.admin-form-actions{grid-column:1 / -1;display:flex;justify-content:flex-end;align-items:center;gap:8px}.patient-delete-dialog{margin-top:14px;padding:16px;border:1px solid #cfa9a9;border-radius:10px;background:#fff8f8;box-shadow:0 8px 24px #4623231a}.patient-delete-dialog h3{margin:0 0 10px;color:#813f3f;font-size:16px}.patient-delete-dialog p{margin:8px 0}.deletion-counts{display:grid!important;grid-template-columns:repeat(4,minmax(90px,1fr));gap:6px!important;margin:12px 0!important}.deletion-counts div{min-width:0!important;padding:8px;border-radius:7px;background:#fff}.irreversible-warning{color:#8d3030;font-weight:800}.secondary-button{border:1px solid #779e87;color:#276646}.new-patient-card{position:static;padding:22px;border:1px solid #d3ded7;border-radius:10px;background:#fff;box-shadow:0 8px 26px #1b3f2d14}.new-patient-card h2{margin:0 0 14px;color:#304b3d;font-size:16px;font-weight:850;line-height:1.4}.new-patient-card>p{margin:0 0 17px;color:#68756e;font-size:13px}@media(min-width:1100px){.new-patient-card{position:sticky;top:18px}}.patient-form{display:grid;gap:13px}.required{color:#a13d3d;font-size:11px}.optional{color:#78827d;font-size:11px}.field-error{color:#a12f2f;font-size:12px;font-weight:700}.line-note{margin:0;padding:10px;border-radius:7px;background:#fff8e8;color:#6d551f;font-size:12px;line-height:1.55}.action-message{margin:-10px 0 18px;padding:12px 15px;border-radius:8px;font-weight:750}.action-message.success{border:1px solid #9bc5aa;background:#eaf6ee;color:#235f3f}.action-message.error{border:1px solid #d7a1a1;background:#fff0f0;color:#8c3030}.patient-appointment-history{margin-top:0;padding-top:18px;border-top:1px solid #d3ded7}.patient-appointment-history h3{margin:0 0 9px;color:#304b3d;font-size:16px}.patient-appointment-list{display:grid;gap:6px}.patient-appointment-row{padding:8px 10px;border:1px solid #d7e0da;border-radius:7px;background:#f8fbf9}.patient-appointment-row>div{display:flex;align-items:baseline;flex-wrap:wrap;gap:7px}.patient-appointment-row strong{color:#263d32;font-size:13px;font-variant-numeric:tabular-nums}.patient-appointment-row span{color:#4f6258;font-size:12px;font-weight:700}.patient-appointment-row p{margin:4px 0 0;color:#5e6863;font-size:12px}.patient-appointment-row .no-show-badge{padding:2px 6px;border-radius:999px;background:#eee1e1;color:#873f3f}.history-empty{margin:5px 0 10px;color:#6e7973;font-size:13px}.past-appointment-disclosure{margin-top:13px;border-top:1px dashed #ccd5cf}.past-appointment-disclosure>summary{display:block;width:fit-content;padding:11px 2px 8px;color:#365d49;font-size:13px;font-weight:800;line-height:1.4;white-space:nowrap;cursor:pointer;list-style:none}.past-appointment-disclosure>summary::-webkit-details-marker{display:none}.past-appointment-disclosure .past-label-open,.past-appointment-disclosure[open] .past-label-closed{display:none}.past-appointment-disclosure[open] .past-label-open{display:inline}.load-more-history{display:block;margin:9px auto 0}.history-period-select{display:flex;align-items:center;gap:8px;margin:8px 0;color:#52615a;font-size:12px;font-weight:700}.history-period-select select{padding:6px 8px;border:1px solid #b9c7bf;border-radius:6px;background:#fff;font-size:13px}.history-load-more{display:block;margin:9px auto 0}.patient-line-link-section{margin-top:0;padding-top:18px;border-top:1px solid #d3ded7}.patient-line-link-section h3{margin:0 0 9px;color:#304b3d;font-size:16px}.line-link-list{display:grid;gap:6px;margin:0;padding:0;list-style:none}.line-link-list li{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 10px;border:1px solid #d7e0da;border-radius:7px;background:#f8fbf9;font-size:13px}.line-link-list li form{margin:0}.line-link-list .danger-button{padding:5px 10px;font-size:12px}.schedule-page{width:calc(100% - 32px);height:calc(100vh - 32px);margin:16px auto;display:flex;flex-direction:column;min-height:0;overflow:hidden}@supports (height: 100dvh){.schedule-page{height:calc(100dvh - 32px)}}.schedule-toolbar{display:flex;flex-direction:column;flex-shrink:0;gap:8px;margin-bottom:8px}.schedule-primary-toolbar{display:flex;align-items:center;flex-direction:row;gap:18px;min-width:0}.schedule-toolbar-title{display:flex;align-items:baseline;flex:0 0 auto;gap:14px;flex-wrap:nowrap;white-space:nowrap}.schedule-toolbar h1{margin:2px 0 0;font-size:26px}.schedule-toolbar-actions{display:flex;align-items:center;flex:0 1 auto;gap:8px;min-width:0;flex-wrap:nowrap}.undo-area{flex:0 0 auto;margin-left:56px}.month-controls{display:flex;align-items:center;gap:8px;flex-wrap:nowrap}.month-controls strong{min-width:130px;text-align:center;font-size:19px;white-space:nowrap}.month-controls button{padding:7px 11px;border:1px solid #bdccc3;border-radius:7px;background:#fff;color:#294c3c;cursor:pointer;white-space:nowrap}.month-controls button:hover{background:#edf5f0}.toolbar-links{display:flex;align-items:center;gap:12px 16px;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}.toolbar-links>*{white-space:nowrap;flex-shrink:0}.toolbar-links .backup-badge small{white-space:normal}.schedule-legend{display:flex;align-items:center;flex-wrap:nowrap;flex-shrink:0;gap:18px;min-height:34px;padding:5px 10px;border:1px solid #d7e0da;border-bottom:0;border-radius:8px 8px 0 0;background:#fff;color:#4b5b53;font-size:12px;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}.schedule-legend span{display:inline-flex;align-items:center;gap:5px;white-space:nowrap;flex-shrink:0}.schedule-legend small{margin-left:auto;color:#6b766f;white-space:nowrap;flex-shrink:0}.schedule-legend .legend-instructions-touch{display:none}@media(hover:none)and (pointer:coarse){.schedule-legend .legend-instructions-pointer{display:none}.schedule-legend .legend-instructions-touch{display:inline}}.legend-swatch{width:16px;height:12px;border:1px solid #d4b23c;border-radius:2px}.legend-swatch.holiday{background:repeating-linear-gradient(135deg,#fff6cf,#fff6cf 4px,#ffdf70 4px 6px)}.legend-type-group{display:inline-flex;align-items:center;gap:14px}.legend-swatch.appointment-type-insurance{background:var(--appointment-type-insurance-bg);border-color:#0003}.legend-swatch.appointment-type-self-pay{background:var(--appointment-type-self-pay-bg);border-color:#0003}.legend-swatch.appointment-type-traffic-accident{background:var(--appointment-type-traffic-accident-bg);border-color:#0003}.legend-swatch.appointment-type-other{background:var(--appointment-type-other-bg);border-color:#0003}.legend-swatch.insurance-claim-excluded{background:#fff;border:1px solid var(--insurance-exclusion-border)}.schedule-viewport{flex:1 1 auto;min-height:0;overflow:auto;overscroll-behavior:contain;border:1px solid #b9c6be;background:#fff;scrollbar-gutter:stable;-webkit-overflow-scrolling:touch}.schedule-sheet{width:calc(var(--date-width) * 2 + var(--slot-count) * var(--slot-width));min-width:max-content;padding-right:max(16px,env(safe-area-inset-right));padding-bottom:max(16px,env(safe-area-inset-bottom))}.schedule-grid-row{position:relative;display:grid;grid-template-columns:var(--date-width) repeat(var(--slot-count),var(--slot-width)) var(--date-width);width:max-content}.schedule-header{position:sticky;top:0;z-index:20;height:38px;background:#f7faf8;box-shadow:0 1px #879a8f}.date-header{position:sticky;left:0;z-index:24;display:grid;place-items:center;border-right:2px solid #60766a;background:#eaf1ed;font-size:13px;font-weight:850}.date-header-right{right:0;left:auto;border-right:0;border-left:2px solid #60766a}.time-header{display:grid;place-items:center;overflow:hidden;border-right:1px solid #cbd4ce;color:#3d4c45;font-size:11px;font-variant-numeric:tabular-nums}.time-header.border-hour{border-left:2px solid #53695d;color:#17221d;font-weight:850}.time-header.border-half{border-left:1px solid #84968c;font-weight:700}.schedule-day{height:var(--row-height);border-bottom:1px solid #aebbb3}.schedule-hour-separator-overlay{position:absolute;z-index:6;top:0;right:0;bottom:0;left:var(--date-width);pointer-events:none;background:repeating-linear-gradient(to right,#61746a 0,#61746a 2px,transparent 2px,transparent var(--hour-width))}.schedule-claim-frame-layer{position:absolute;inset:0;z-index:7;pointer-events:none}.insurance-claim-excluded-frame{position:absolute;width:var(--slot-width);height:var(--row-height);box-sizing:border-box;box-shadow:inset 0 0 0 1px var(--insurance-exclusion-border);pointer-events:none}.insurance-claim-excluded-frame.appointment-overlap{width:calc(var(--slot-width) - 8px)}.schedule-day.is-today:after{content:"";position:absolute;z-index:15;inset:0;box-sizing:border-box;border:3px solid #69a879;pointer-events:none}.date-cell{position:sticky;left:0;z-index:12;display:flex;align-items:center;justify-content:center;padding:0;border:0;border-right:2px solid #60766a;border-bottom:1px solid #aebbb3;border-radius:0;background:#f8faf9;color:inherit;font:inherit;font-size:13px;cursor:pointer}.date-cell-right{right:0;left:auto;z-index:17;border-right:0;border-left:2px solid #60766a;cursor:default;pointer-events:none}.date-cell.is-today,.schedule-day.is-today>.date-cell:first-child{box-shadow:inset 0 3px #69a879,inset 0 -3px #69a879,inset 3px 0 #69a879}.date-cell-right.is-today{box-shadow:inset 0 3px #69a879,inset 0 -3px #69a879,inset -3px 0 #69a879}.schedule-current-time-line{position:absolute;z-index:14;top:0;bottom:0;width:2px;background:#176b3a;opacity:1;pointer-events:none;transform:translate(-1px);transition:opacity 80ms linear}.schedule-current-time-line>span{position:absolute;bottom:100%;left:0;padding:1px 3px;border-radius:3px 3px 3px 0;background:#176b3ae0;color:#fff;font-size:9px;font-weight:800;line-height:1.2;white-space:nowrap;pointer-events:none}.schedule-day:has(.is-current-time-target:hover) .schedule-current-time-line{opacity:.1}.appointment-continuation-hover-overlay{position:absolute;z-index:16;bottom:0;height:6px;border-radius:0;pointer-events:none}.appointment-continuation-hover-overlay.appointment-type-insurance{background:#2a775247}.appointment-continuation-hover-overlay.appointment-type-self-pay{background:#ae851c47}.appointment-continuation-hover-overlay.appointment-type-traffic-accident{background:#b4535f42}.appointment-continuation-hover-overlay.appointment-type-other{background:#7e5b9d40}.date-cell strong{min-width:38px;font-size:14px;font-variant-numeric:tabular-nums}.date-cell span{color:#59665f}.date-cell .date-holiday-label{margin-left:2px;color:inherit;font-weight:800}.weekday-土 .date-cell{background:#e8eef5;color:#315e8a}.is-sunday-holiday .date-cell{background:#f3e8e8;color:#9a3434}@media(max-width:999px){.schedule-sheet{width:calc(var(--date-width) + var(--slot-count) * var(--slot-width))}.schedule-grid-row{grid-template-columns:var(--date-width) repeat(var(--slot-count),var(--slot-width))}.date-header-right,.date-cell-right{display:none}}.time-cell{position:relative;height:var(--row-height);min-width:0;padding:0;border:0;border-right:1px solid #d6ddd8;border-bottom:1px solid #b8c3bc;border-radius:0;background:#fff;cursor:pointer;touch-action:pan-x pan-y;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.time-cell:hover,.time-cell:focus-visible{z-index:2;outline:2px solid #3d8963;outline-offset:-2px;background-color:#eff8f2}.time-cell.border-hour{border-left:2px solid #61746a}.time-cell.border-half{border-left:1px solid #9eaca4}.time-cell.marking-holiday,.time-cell.marking-irregular_closure,.time-cell.marking-special_hours,.time-cell.marking-lunch_break,.time-cell.marking-normally_closed,.time-cell.marking-other{background:repeating-linear-gradient(135deg,#fff6cf,#fff6cf 6px,#ffdf70 6px 9px)}.weekday-土 .time-cell.marking-holiday{background:repeating-linear-gradient(135deg,#f1f6fc,#f1f6fc 6px,#bad2ea 6px 9px)}.is-sunday-holiday .time-cell.marking-holiday{background:repeating-linear-gradient(135deg,#fff3ef,#fff3ef 6px,#dfa895 6px 9px)}.time-cell.is-evening-closing-display{background:repeating-linear-gradient(135deg,#fff6cf,#fff6cf 6px,#ffdf70 6px 9px)}.time-cell.is-drag-selecting{outline:2px solid #596f63;outline-offset:-2px;background:#e2ebe5}.time-cell.is-long-press-pending:after,.appointment-item.is-long-press-pending:after{content:"";position:absolute;inset:3px;z-index:8;border:2px solid #668273;border-radius:4px;opacity:.45;animation:long-press-ready .6s linear forwards;pointer-events:none}@keyframes long-press-ready{0%{transform:scale(.84);opacity:.18}to{transform:scale(1);opacity:.8}}.slot-block{position:absolute;inset:0;z-index:3;display:grid;place-items:center;color:#4c514e;font-size:18px;font-weight:900;pointer-events:none}.slot-block.is-hard{inset:50% auto auto 50%;width:min(82%,calc(var(--row-height) * .82));height:auto;aspect-ratio:1 / 1;overflow:hidden;color:transparent;font-size:0;opacity:.76;transform:translate(-50%,-50%)}.slot-block.is-hard:before,.slot-block.is-hard:after,.appointment-block-indicator.is-hard:before,.appointment-block-indicator.is-hard:after{content:"";position:absolute;top:50%;left:-20.71%;width:141.42%;height:1.25px;border-radius:1px;background:#525b56;transform-origin:center;pointer-events:none}.slot-block.is-hard:before,.appointment-block-indicator.is-hard:before{transform:rotate(45deg)}.slot-block.is-hard:after,.appointment-block-indicator.is-hard:after{transform:rotate(-45deg)}.time-cell.is-auto-required:after{content:"";position:absolute;left:0;right:0;bottom:0;height:6px;background:#4c514e4d;pointer-events:none}.appointment-layer{position:absolute;inset:0;z-index:5;pointer-events:none}.appointment-item{position:absolute;width:var(--slot-width);height:var(--row-height);box-sizing:border-box;pointer-events:auto;cursor:pointer;touch-action:pan-x pan-y;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.appointment-item.insurance-claim-excluded{box-shadow:0 0 0 1px var(--insurance-exclusion-border)}.appointment-block-indicator{position:absolute;z-index:4;top:-5px;right:-2px;width:14px;height:14px;border:1px solid #6f7471;border-radius:50%;background:#fff;color:#424744;font-size:11px;font-weight:900;line-height:12px;text-align:center;pointer-events:none}.appointment-block-indicator.is-hard{inset:50% auto auto 50%;width:min(82%,calc(var(--row-height) * .82));height:auto;aspect-ratio:1 / 1;display:block;overflow:hidden;border:0;border-radius:2px;background:transparent;color:transparent;font-size:0;opacity:.72;transform:translate(-50%,-50%)}.availability-page{width:min(100%,720px);min-height:100dvh;margin:0 auto;padding:max(18px,env(safe-area-inset-top)) max(8px,env(safe-area-inset-right)) max(28px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));background:#f6faf7;color:#26342d}.availability-header{padding:8px 8px 12px;text-align:center}.availability-header h1{margin:2px 0 6px;color:#296844;font-size:clamp(24px,7vw,32px)}.availability-header p{margin:0;font-size:13px;line-height:1.65}.availability-kicker{color:#43825c;font-size:12px!important;font-weight:800;letter-spacing:.12em}.availability-course-bar{display:flex;align-items:center;gap:8px;margin:4px 0 10px;padding:9px 10px;border:1px solid #cfe1d5;border-radius:10px;background:#fff}.availability-course-bar label{flex:none;color:#52635a;font-size:12px;font-weight:800}.availability-course-bar select{min-width:0;width:100%;padding:7px 30px 7px 8px;border:1px solid #b8cec0;border-radius:7px;background:#fff;color:#24352c;font:inherit;font-weight:700}.availability-course-bar>div{min-width:0;width:100%}.availability-course-price{margin:5px 2px 0;color:#52635a;font-size:12px;line-height:1.5}.availability-course-required{margin:18px 8px;padding:18px 12px;border-radius:10px;background:#f4f9f5;color:#496054;text-align:center;font-size:14px;font-weight:700;line-height:1.7}.availability-returning-guide{margin:4px 0 12px;padding:14px;border:1px solid #cfe1d5;border-radius:12px;background:#fff}.availability-returning-guide h2{margin:0 0 9px;color:#296844;font-size:17px}.availability-returning-guide p{margin:6px 0;font-size:13px;line-height:1.65}.availability-returning-guide.is-collapsed{padding-block:10px}.availability-returning-guide.is-collapsed h2{margin-bottom:5px}.availability-guide-toggle{min-height:40px;padding:7px 11px;border:1px solid #b8cec0;border-radius:8px;background:#f7fbf8;color:#296844;font:inherit;font-size:13px;font-weight:800;cursor:pointer}.availability-back-link{display:inline-flex;align-items:center;min-height:40px;margin:0 8px 6px;padding:0;border:0;background:transparent;color:#296844;font:inherit;font-size:13px;font-weight:800;text-decoration:none;cursor:pointer}.availability-error{margin:8px 0;padding:10px;border-radius:8px;background:#fff0f0;color:#9a3030;font-size:13px}.availability-week-nav{position:sticky;top:0;z-index:12;display:grid;grid-template-columns:64px 1fr 64px;align-items:center;gap:6px;min-height:48px;margin-bottom:8px;padding:4px 0;background:#fff;scroll-margin-top:8px}.availability-week-nav strong{text-align:center;font-size:15px}.availability-week-nav a{min-height:40px;display:grid;place-items:center;border:1px solid #bfd6c6;border-radius:8px;background:#fff;color:#296844;font-size:13px;font-weight:800;text-decoration:none}.availability-grid-wrap{max-width:100%;overflow:visible;border:1px solid #c9d8ce;border-radius:9px;background:#fff}.availability-grid{display:grid;grid-template-columns:47px repeat(7,minmax(0,1fr));width:100%;font-size:11px}.availability-grid>[role=columnheader],.availability-corner{position:sticky;top:48px;z-index:11;min-width:0;height:43px;display:grid;place-items:center;border-right:1px solid #dce6df;border-bottom:1px solid #c9d8ce;background:#eef6f0}.availability-grid>[role=columnheader] span{font-size:10px}.availability-grid>[role=columnheader] strong{font-size:14px}.availability-grid-row{display:contents}.availability-time{height:36px;display:grid;place-items:center;border-right:1px solid #c9d8ce;border-bottom:1px solid #e5ece7;background:#f8faf8;color:#536158;font-size:10px;font-weight:700}.availability-grid-row button{min-width:0;height:36px;padding:0;border:0;border-right:1px solid #e5ece7;border-bottom:1px solid #e5ece7;background:#fff;color:#23894c;font-size:19px;font-weight:700;cursor:pointer}.availability-grid-row button:disabled{color:#a9b2ac;cursor:default}.availability-grid .is-today{background:#fff9dc}.availability-grid-row button:not(:disabled):focus-visible{outline:3px solid #45a36a;outline-offset:-3px}.availability-legend{display:flex;justify-content:center;gap:24px;margin:10px 0 6px;color:#526159;font-size:12px;font-weight:700}.availability-disclaimer{margin:8px auto 0;color:#66736c;font-size:11px;line-height:1.65;text-align:center}.availability-dialog{width:min(calc(100% - 24px),420px);max-width:100%;padding:0;border:0;border-radius:16px;box-shadow:0 20px 60px #10251955}.availability-dialog::backdrop{background:#12251a88}.availability-dialog-inner{padding:22px 18px max(18px,env(safe-area-inset-bottom))}.availability-dialog h2{margin:0 0 14px;color:#296844;font-size:20px}.availability-message-preview{padding:12px;border-radius:9px;background:#eef7f1;font-weight:800;line-height:1.6;white-space:pre-line}.availability-guest-fields{display:grid;gap:6px;margin-top:14px;text-align:left}.availability-guest-fields label{font-size:13px;font-weight:800;color:#296844}.availability-guest-fields input{min-height:44px;padding:8px 10px;border:1px solid #b8cec0;border-radius:8px;font:inherit;box-sizing:border-box;width:100%}.availability-guest-error{margin:2px 0 0;color:#9a3030;font-size:12px;font-weight:700}.availability-dialog-actions{display:grid;grid-template-columns:.8fr 1.4fr;gap:8px;margin-top:18px}.availability-dialog-actions button,.availability-primary-link,.availability-secondary-link{min-height:48px;display:grid;place-items:center;padding:10px;border:1px solid #b8cec0;border-radius:9px;background:#fff;color:#296844;font:inherit;font-weight:800;text-align:center;text-decoration:none}.availability-dialog-actions button[type=submit],.availability-primary-link{border-color:#2d8a50;background:#2d8a50;color:#fff}.availability-result-card{margin:min(12vh,80px) auto 0;padding:24px 18px;border:1px solid #cee0d4;border-radius:16px;background:#fff;box-shadow:0 8px 24px #21472f16;text-align:center}.availability-result-card h1{color:#296844;font-size:23px}.availability-result-card .availability-primary-link,.availability-result-card .availability-secondary-link{margin-top:12px}@media(max-width:390px){.availability-grid{grid-template-columns:44px repeat(7,minmax(0,1fr))}.availability-grid-row button{font-size:18px}.availability-time{font-size:9px}}.schedule-page.is-right-block-brushing,.schedule-page.is-right-block-brushing .time-cell,.schedule-page.is-right-block-brushing .appointment-item{cursor:crosshair}.legend-small-x{font-size:16px}.legend-large-x{display:inline-block;font-size:25px;line-height:14px;vertical-align:-3px}.guidance-arrow-overlay{position:absolute;inset:0;z-index:9;overflow:visible;pointer-events:none}.guidance-arrow-path{fill:none;stroke:#c98a1f;stroke-width:1.6;stroke-linejoin:round;stroke-linecap:round;opacity:.6;transition:opacity .15s,stroke-width .15s,stroke .15s}.guidance-arrow-path.is-active{stroke:#a85f00;stroke-width:2.4;opacity:1}.guidance-arrow-path.is-dimmed{opacity:.3}.guidance-arrowhead-fill{fill:#c98a1f}.guidance-arrowhead-fill.is-active{fill:#a85f00}.appointment-color-marker-dot{position:absolute;right:2px;z-index:6;width:8px;height:8px;border:1px solid rgb(0 0 0 / 25%);border-radius:50%;cursor:pointer}.appointment-color-marker-dot.slot-top{top:7px}.appointment-color-marker-dot.slot-middle{top:50%;transform:translateY(-50%)}.appointment-color-marker-dot.slot-bottom{bottom:2px}.marker-color-green{background:#3fae57}.marker-color-blue{background:#3d7fd6}.marker-color-red{background:#d64b4b}.marker-color-yellow{background:#e0b23a}.marker-color-purple{background:#9457c9}.legend-marker-group{gap:8px!important}.marker-palette{display:inline-flex;align-items:center;gap:5px}.marker-palette-dot{width:12px;height:12px;border:1px solid rgb(0 0 0 / 25%);border-radius:50%;cursor:grab}.marker-compact-row{display:flex;align-items:center;gap:7px;margin:8px 0}.marker-compact-label{color:#39483f;font-size:12px;font-weight:800}.marker-dot-button{width:18px;height:18px;padding:0;border:1px solid rgb(0 0 0 / 25%);border-radius:50%;cursor:pointer;opacity:.35}.marker-dot-button.is-active{opacity:1;box-shadow:0 0 0 2px #fff,0 0 0 3px #39483f}.marker-dot-button:disabled{cursor:not-allowed}.appointment-item:focus-visible{outline:2px solid #1f6847;outline-offset:1px}.appointment-label{position:relative;display:flex;flex-direction:column;justify-content:center;width:100%;height:100%;box-sizing:border-box;overflow:hidden;padding:2px 3px;border:0;border-radius:0;background:#f5fff8;color:#173f2c;font-size:11px;font-weight:800;line-height:14px;text-align:center;box-shadow:inset -1px 0 #d6ddd8,inset 0 -1px #b8c3bc}.appointment-label span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.appointment-label span:first-child{font-variant-numeric:tabular-nums}.appointment-type-insurance .appointment-label{background:var(--appointment-type-insurance-bg);color:#173f2c}.appointment-type-self-pay .appointment-label{background:var(--appointment-type-self-pay-bg);color:#5a4714}.appointment-type-traffic-accident .appointment-label{background:var(--appointment-type-traffic-accident-bg);color:#6b2d35}.appointment-type-other .appointment-label{background:var(--appointment-type-other-bg);color:#503b69}.appointment-overlap{width:calc(var(--slot-width) - 8px);z-index:2}.appointment-overlap .appointment-label{background:#dceee3;text-align:center}.appointment-item.appointment-system-scheduled .appointment-label{background:#e8e0f5;color:#3d2b5e}.schedule-month-note{flex:0 0 auto;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:7px;min-width:0;margin:6px 2px 0}.schedule-month-note label{color:#59665f;font-size:13px;font-weight:400;white-space:nowrap}.schedule-month-note textarea{width:100%;height:38px;min-height:38px;max-height:38px;box-sizing:border-box;resize:none;overflow-x:hidden;overflow-y:auto;padding:3px 6px;border:1px solid #bdc9c1;border-radius:5px;background:#fff;color:#27352e;font:inherit;font-size:13px;line-height:15px;overscroll-behavior:contain}.schedule-month-note textarea:focus{outline:2px solid #6c9b80;outline-offset:1px}.schedule-month-note-status{min-width:48px;color:#6b766f;font-size:10px;text-align:right;white-space:nowrap}.schedule-month-note-status.is-saved{color:#2e7250}.schedule-month-note-status.is-error{color:#a33d3d;font-weight:700}.booking-toast{position:fixed;top:12px;left:50%;z-index:100;transform:translate(-50%);max-width:min(520px,calc(100vw - 24px));padding:10px 16px;border-radius:8px;font-size:14px;font-weight:800;pointer-events:none;box-shadow:0 5px 18px #1932252e}.booking-toast.success{border:1px solid #8fbea0;background:#e9f6ee;color:#205d3c}.booking-toast.error{border:1px solid #d79e9e;background:#fff0f0;color:#8f3030}.booking-popover-backdrop,.slot-confirm-backdrop{position:fixed;inset:0;z-index:79;background:transparent;touch-action:none}.booking-popover,.appointment-detail-popover,.background-popover,.slot-confirm-popover{position:fixed;z-index:80;max-height:calc(100vh - 16px);overflow:auto;border:1px solid #9fb5a8;border-radius:10px;background:#fff;box-shadow:0 10px 32px #0a1d1338}@supports (max-height: 100dvh){.booking-popover,.appointment-detail-popover,.background-popover,.slot-confirm-popover{max-height:calc(100dvh - 16px)}}.background-popover{width:260px;padding:14px}.background-popover h2{margin:0 30px 12px 0;font-size:17px}.slot-confirm-popover{width:220px;padding:14px}.slot-confirm-message{margin:0;font-size:14px;font-weight:700;color:#23342a}.background-quick-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px}.background-quick-actions form{margin:0}.background-quick-actions button{width:100%}.background-quick-actions button,.time-marking-toggle{min-height:34px;border:1px solid #b5c2ba;background:#f7faf8;color:#31443a}.time-marking-toggle{grid-column:1 / -1}.time-marking-toggle{width:100%;margin-top:8px}.time-marking-form{display:grid;gap:9px}.time-marking-form label{display:grid;grid-template-columns:52px 1fr;align-items:center;gap:8px;font-size:13px;font-weight:700}.booking-popover{width:270px;max-height:calc(100vh - 16px);overflow:auto;padding:13px}.booking-popover.is-expanded{width:340px}.booking-popover h2{margin:0 34px 12px 0;font-size:18px}.dialog-close{position:absolute;top:12px;right:12px;width:34px;height:34px;display:flex;align-items:center;justify-content:center;padding:0;border:1px solid #bdc9c1;border-radius:50%;background:#fff;color:#526159;font-size:21px;line-height:1;cursor:pointer}.booking-form{display:grid;gap:9px}.booking-form>label{display:grid;gap:6px;color:#39483f;font-size:13px;font-weight:800}.booking-form input,.booking-form select{width:100%;padding:10px 11px;border:1px solid #afbeb5;border-radius:7px;background:#fff;color:#17221d}.booking-form>label:first-of-type input{padding:9px 10px;border:2px solid #337a57;font-size:19px;font-weight:800}.booking-form input:focus,.booking-form select:focus{outline:2px solid #70a88a;outline-offset:1px}.patient-confirmation{min-height:34px;display:flex;align-items:center;gap:8px;padding:5px 8px;border:1px dashed #b8c3bd;border-radius:7px;background:#f7f9f8;color:#68736d;font-size:12px}.patient-confirmation.found{border-style:solid;border-color:#83ad93;background:#edf7f1;color:#1f5338}.patient-confirmation strong{font-size:17px}.patient-confirmation span{font-size:16px;font-weight:800}.patient-confirmation small{margin-left:auto;color:#557062;font-size:10px}.patient-search-panel{position:fixed;z-index:82;display:flex;flex-direction:column;min-width:0;overflow:hidden;padding:10px;border:1px solid #d8e4dd;border-radius:9px;background:#f7faf8;box-shadow:0 10px 32px #0a1d132e;box-sizing:border-box;overflow-wrap:anywhere}.patient-search-panel[data-placement=overlay]{z-index:84}.patient-search-panel-headline{flex:0 0 auto;margin:0 0 8px;color:#315e47;font-size:12px;font-weight:700}.patient-search-panel-scroll{min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain}.patient-search-panel-list{display:grid;gap:6px;margin:0;padding:0;list-style:none}.patient-search-candidate{display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;padding:7px 9px;border:1px solid #dce7e0;border-radius:7px;background:#fff;color:inherit;font:inherit;text-align:left;cursor:pointer}.patient-search-candidate:hover:not(:disabled){border-color:#75a58b;background:#eaf5ee}.patient-search-candidate:disabled{opacity:.6;cursor:default}.patient-search-candidate strong{font-size:13px;font-variant-numeric:tabular-nums;color:#17221d}.patient-search-candidate span{font-size:13px;font-weight:700;color:#17221d}.patient-search-candidate small{color:#68766f;font-size:11px;font-weight:600}.patient-name-search-warning{margin:6px 0 0;color:#8a4b1f;font-size:12px;font-weight:700}.quick-booking-buttons{display:flex;justify-content:center;gap:6px}.quick-booking-button{min-width:74px;min-height:32px;padding:5px 12px;border:1px solid #9fb0a6;border-radius:7px;background:#f1f6f3;color:#24402f;font-size:13px;font-weight:800;cursor:pointer}.quick-booking-button:disabled{opacity:.6;cursor:default}.quick-booking-button:hover:not(:disabled){border-color:#347b58;background:#e2f0e8}.booking-form fieldset{margin:0;padding:10px 12px 12px;border:1px solid #cad5ce;border-radius:8px}.booking-form legend{padding:0 5px;font-size:13px;font-weight:800}.choice-row{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.choice-row label{display:flex;align-items:center;justify-content:center;gap:5px;min-height:38px;border:1px solid #b9c8bf;border-radius:7px;cursor:pointer}.choice-row input{width:auto}.booking-warning{margin:0;padding:8px 10px;border-radius:6px;background:#fff7df;color:#73571c;font-size:12px}.booking-warning.strong{border:1px solid #d4a968}.booking-defaults{padding:7px 9px;border-radius:6px;background:#edf5f0;color:#285e43;font-size:13px;font-weight:850}.quick-booking-options{display:grid;gap:7px}.compact-segment-label{font-size:12px;font-weight:800;color:#39483f}.compact-segments{display:grid;gap:4px}.type-segments{grid-template-columns:repeat(3,1fr)}.duration-segments{flex:1;grid-template-columns:repeat(6,1fr)}.quick-booking-options .type-segments{grid-template-columns:repeat(5,1fr)}.quick-booking-options .compact-segments button{min-height:24px;padding:2px 4px;font-size:11px}.compact-segments button,.other-type-button{min-height:29px;padding:3px 5px;border:1px solid #b7c4bc;border-radius:6px;background:#f8faf9;color:#45534b;font-size:12px;font-weight:750;cursor:pointer}.compact-segments button[aria-pressed=true],.other-type-button.is-selected{border-color:#347b58;background:#dfeee5;color:#164c31;box-shadow:inset 0 0 0 1px #347b58}.compact-duration-row{display:flex;align-items:center;gap:5px;color:#59675f;font-size:12px}.other-type-button{width:100%}.advanced-toggle{justify-self:start;padding:3px 0;border:0;background:transparent;color:#286c4b;font-size:13px;font-weight:800;cursor:pointer}.booking-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:34px}.booking-advanced{display:grid;gap:10px;padding-top:4px}.booking-advanced.is-collapsed{display:none}.compact-booking-submit{min-width:62px;min-height:32px;padding:5px 14px}.keyboard-help{margin:7px 0 0;color:#707a74;text-align:center;font-size:11px}.guidance-control,.marker-toggle-list{margin:8px 0;padding:8px;border:1px solid #e5ece7;border-radius:7px;background:#fafcfb}.guidance-control label{display:grid;gap:4px;margin-bottom:6px;color:#39483f;font-size:12px;font-weight:800}.guidance-control label:last-child{margin-bottom:0}.quick-booking-conversion{display:grid;gap:6px;margin:8px 0;padding:8px;border:1px dashed #d4a968;border-radius:7px;background:#fffaf0}.quick-booking-conversion-label{margin:0;color:#7a5a1c;font-size:12px;font-weight:800}.quick-booking-conversion label{display:grid;gap:4px;color:#39483f;font-size:12px;font-weight:800}.quick-booking-conversion input{padding:8px 9px;border:1px solid #afbeb5;border-radius:6px}.guidance-control select{padding:7px 8px;border:1px solid #afbeb5;border-radius:6px;background:#fff;font-size:13px}.marker-toggle-label{margin:0 0 6px;color:#39483f;font-size:12px;font-weight:800}.marker-toggle-list .checkbox-label{margin:4px 0!important}.appointment-detail-popover{width:285px;padding:17px}.appointment-detail-popover.is-editing{width:340px;max-height:calc(100vh - 16px);overflow:auto}.appointment-detail-layout{display:block;min-width:0}.appointment-detail-main{width:100%;min-width:0}.appointment-detail-main>strong{display:block;padding-right:28px;font-size:17px}.appointment-detail-popover p{margin:8px 0;color:#435249}.appointment-detail-popover .secondary-button{display:block;margin:13px 0 0 auto}.appointment-upcoming-panel{position:fixed;z-index:82;display:flex;flex-direction:column;min-width:0;overflow:hidden;padding:12px;border:1px solid #d8e4dd;border-radius:9px;background:#f7faf8;box-shadow:0 10px 32px #0a1d132e;box-sizing:border-box;overflow-wrap:anywhere}.appointment-upcoming-heading{display:flex;flex:0 0 auto;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.appointment-upcoming-heading h2{margin:0;color:#315e47;font-size:15px}.appointment-upcoming-heading .text-button{margin:0}.appointment-upcoming-scroll{min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain}.appointment-upcoming-scroll>p{font-size:13px}.appointment-upcoming-panel ul{display:grid;gap:7px;margin:0;padding:0;list-style:none}.appointment-upcoming-panel li{display:grid;gap:3px;padding:9px;border:1px solid #dce7e0;border-radius:7px;background:#fff}.appointment-upcoming-panel li.is-current{border-color:#75a58b;background:#eaf5ee}.appointment-upcoming-panel li strong{font-size:13px;font-variant-numeric:tabular-nums}.appointment-upcoming-panel li span{color:#39765a;font-size:11px;font-weight:800}.appointment-upcoming-overlay-backdrop{position:fixed;inset:0;z-index:81;background:#121f1814;touch-action:none}.appointment-upcoming-panel[data-placement=overlay]{z-index:84}.same-day-booking-warning{max-width:100%;margin:12px 0;padding:12px;border:2px solid #d59b27;border-radius:9px;background:#fff8e7;box-sizing:border-box}.same-day-booking-warning h3{margin:0 0 7px;color:#7a4b00;font-size:15px}.same-day-booking-warning p{margin:6px 0}.same-day-booking-warning-list{display:grid;gap:6px;max-height:min(32dvh,240px);overflow-y:auto;overscroll-behavior:contain}.same-day-booking-warning-list article{display:grid;gap:2px;padding:7px 9px;border:1px solid #e5c782;border-radius:6px;background:#fff}.same-day-booking-warning-list span{font-variant-numeric:tabular-nums}.same-day-booking-warning-note{font-size:12px}.same-day-booking-warning-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:9px}.patient-same-day-alert-section{margin-top:18px;padding-top:16px;border-top:1px solid #dfe8e2}.patient-same-day-alert-list,.same-day-alert-search-results{display:grid;gap:6px;margin:8px 0;padding:0;list-style:none}.patient-same-day-alert-list li,.same-day-alert-search-results li{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0;padding:8px 10px;border:1px solid #dce7e0;border-radius:7px;background:#f9fbfa}.patient-same-day-alert-list form,.same-day-alert-search-results form{flex:0 0 auto;margin:0}.same-day-alert-add{margin-top:10px}.same-day-alert-add>summary{cursor:pointer;font-weight:800}.same-day-alert-add .search-controls{margin-top:9px}.same-day-alert-message{font-size:13px}.same-day-alert-message.is-success{color:#26704d}.same-day-alert-message.is-error{color:#a33a2b}@media(max-width:700px){.same-day-booking-warning-actions{align-items:stretch;flex-direction:column}.same-day-booking-warning-actions button{width:100%;min-height:44px}.patient-same-day-alert-list li,.same-day-alert-search-results li{align-items:stretch;flex-direction:column}.patient-same-day-alert-list form,.same-day-alert-search-results form,.patient-same-day-alert-list button,.same-day-alert-search-results button{width:100%;min-height:44px}}.undo-form{margin:0}.undo-button{display:inline-flex;align-items:center;justify-content:center;gap:4px;padding:5px 10px;border:1px solid #9db0a5;border-radius:6px;background:#f7faf8;color:#315e47;font-size:12px;font-weight:800;white-space:nowrap;cursor:pointer}.undo-button:disabled{opacity:.45;cursor:default}.detail-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-top:13px}.detail-actions form,.detail-actions .secondary-button{margin:0}.detail-actions .future-appointments-toggle{margin-right:auto}@media(max-width:700px){.appointment-upcoming-panel[data-placement=stacked],.patient-search-panel[data-placement=stacked]{max-width:calc(100vw - 16px)}}@media(pointer:coarse){.undo-button,.dialog-close,.background-quick-actions button,.time-marking-toggle,.detail-actions button,.booking-actions button,.compact-segments button,.other-type-button,.quick-booking-button,.quick-booking-options .compact-segments button{min-height:44px}.dialog-close{top:7px;right:7px;width:44px;height:44px}.booking-popover h2,.background-popover h2{min-height:38px;padding-right:42px}.schedule-toolbar button,.toolbar-links a{min-height:44px;display:inline-flex;align-items:center;justify-content:center}.patient-search-candidate{min-height:44px}}@media(max-width:1023px)and (orientation:portrait){.schedule-page{width:calc(100% - 16px);height:calc(100vh - 16px);margin:8px auto}.schedule-primary-toolbar{align-items:stretch;flex-direction:column;gap:4px}.schedule-toolbar-title{gap:12px}.schedule-toolbar h1{font-size:24px}.schedule-toolbar-actions{gap:6px}.undo-label{display:none}.undo-button{width:44px;padding-inline:0}}@supports (height: 100dvh){@media(max-width:1023px)and (orientation:portrait){.schedule-page{height:calc(100dvh - 16px)}}}@media(max-width:999px)and (orientation:landscape),(max-width:479px)and (orientation:portrait){.schedule-page{width:calc(100% - 16px);height:calc(100vh - 16px);margin:8px auto}.schedule-toolbar{gap:6px;margin-bottom:6px}.schedule-primary-toolbar{gap:10px}.schedule-toolbar-title{gap:9px}.schedule-toolbar-title .eyebrow{font-size:12px;letter-spacing:.045em}.schedule-toolbar h1{font-size:20px}.schedule-toolbar-actions,.month-controls{gap:4px}.undo-area{margin-left:20px}.schedule-primary-toolbar button{min-height:36px}.undo-label{display:none}.undo-button{width:36px;padding:0}.month-controls button{padding:5px 7px;font-size:12px}.month-controls strong{min-width:98px;font-size:15px}}@supports (height: 100dvh){@media(max-width:999px)and (orientation:landscape),(max-width:479px)and (orientation:portrait){.schedule-page{height:calc(100dvh - 16px)}}}.appointment-edit-form{display:grid;gap:9px;margin-top:12px}.appointment-edit-form>label{display:grid;gap:4px;color:#39483f;font-size:12px;font-weight:800}.appointment-edit-form input,.appointment-edit-form select{width:100%;padding:8px 9px;border:1px solid #afbeb5;border-radius:6px;background:#fff}.appointment-edit-form fieldset{margin:0;padding:8px;border:1px solid #cad5ce;border-radius:7px}.appointment-edit-form legend{padding:0 4px;font-size:12px;font-weight:800}.narrow-page{width:min(960px,calc(100% - 40px));margin:32px auto 64px}.ticket-search-panel{margin-bottom:22px}.ticket-search-results{margin:10px 0 0;padding:0;border:1px solid #d6e2da;border-radius:10px;background:#fff;list-style:none;overflow:hidden}.ticket-search-results li{display:flex;align-items:center;justify-content:space-between;gap:10px;border-bottom:1px solid #e5ece7}.ticket-search-results li:last-child{border-bottom:0}.ticket-search-results a{display:block;padding:14px 18px;font-size:16px;font-weight:750;color:#17221d}.ticket-search-results a:hover,.ticket-search-results a:focus-visible{background:#f0f8f3;text-decoration:none}.ticket-search-results li>span{padding:10px 14px;font-size:14px;font-weight:750}.ticket-search-results li form{margin:0 10px 0 0}.ticket-share-search{margin-top:8px}.ticket-share-search .search-controls{display:flex;gap:8px;margin-bottom:4px}.ticket-share-search .search-controls input{flex:1;min-width:0;padding:9px 10px;border:1px solid #afbeb5;border-radius:7px}.correction-current{margin:0 0 8px;color:#52615a}.correction-current strong{font-size:20px;color:#17221d}.ticket-service-form-new h3{margin:0 0 10px;font-size:15px}.ticket-selected-patient>h2{margin:0 0 16px;font-size:22px}.ticket-account-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;margin-bottom:20px}.ticket-account-card{padding:18px;border:1px solid #d6e2da;border-radius:12px;background:#fff;box-shadow:0 6px 20px #1d42300f}.ticket-account-card>header{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:4px}.ticket-account-card>header h3{margin:0;font-size:18px}.ticket-remaining{color:#216749;font-size:17px;font-weight:850;white-space:nowrap}.ticket-shared-note{margin:4px 0 12px;padding:8px 10px;border-radius:8px;background:#f2f7f4;color:#3d4b44;font-size:12px;font-weight:700;line-height:1.6}.ticket-card-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:10px 0}.ticket-correction-link{flex:0 0 auto;border:0;padding:0;background:transparent;color:#26704d;font-size:13px;font-weight:700;text-decoration:none;cursor:pointer}.ticket-correction-link:hover,.ticket-correction-link:focus-visible{text-decoration:underline}.ticket-card-panels{display:grid;gap:4px;margin-top:10px;border-top:1px dashed #ccd5cf;padding-top:8px}.ticket-history,.ticket-share-settings,.ticket-admin-tools{border-top:0}.ticket-history>summary,.ticket-share-settings>summary,.ticket-admin-tools>summary{padding:8px 2px;color:#365d49;font-size:13px;font-weight:800;cursor:pointer;list-style:none}.ticket-history>summary::-webkit-details-marker,.ticket-share-settings>summary::-webkit-details-marker,.ticket-admin-tools>summary::-webkit-details-marker{display:none}.ticket-history ul{display:grid;gap:6px;margin:6px 0 0;padding:0;list-style:none}.ticket-history li{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px;padding:8px 10px;border:1px solid #e5ece7;border-radius:7px;background:#fafcfb;font-size:12px}.ticket-history li.use{border-left:3px solid #b94a4a}.ticket-history li.purchase{border-left:3px solid #26704d}.ticket-history li.cancel{border-left:3px solid #8a5a0c}.ticket-history li.correction{border-left:3px solid #5a5ab9}.ticket-history-memo{color:#68766f}.ticket-history-cancel{margin-left:auto}.ticket-share-settings-lead{margin:6px 0 4px;color:#52615a;font-size:12px;font-weight:700}.ticket-member-list{display:grid;gap:4px;margin:0 0 8px;padding:0;list-style:none}.ticket-member-list li{display:flex;align-items:center;justify-content:space-between;padding:6px 8px;border-radius:6px;background:#f7faf8;font-size:13px;font-weight:700}.text-button{border:0;background:transparent;color:#7b5555;font-size:12px;font-weight:800;text-decoration:underline;cursor:pointer}.ticket-inline-form{display:grid;gap:8px;margin-top:8px}.ticket-inline-form label{display:grid;gap:4px;color:#39483f;font-size:12px;font-weight:800}.ticket-inline-form input,.ticket-inline-form select{padding:8px 9px;border:1px solid #afbeb5;border-radius:6px;background:#fff}.unit-input{display:flex;align-items:center;gap:6px}.unit-input input{width:90px}.confirm-panel{margin:10px 0;padding:14px;border:1px solid #cbd9d0;border-radius:10px;background:#f7faf8}.confirm-panel p{margin:0;line-height:1.7}.ticket-register-form,.ticket-selection-picker{max-width:420px;margin:16px 0;padding:18px;border:1px solid #cbd9d0;border-radius:12px;background:#fff;box-shadow:0 6px 20px #1d42300f}.ticket-register-form h3,.ticket-selection-picker h3{margin:0;font-size:16px}.radio-row{display:flex;align-items:center;gap:8px;padding:8px;border:1px solid #d6e2da;border-radius:7px;font-size:13px;font-weight:700}.ticket-service-list{display:grid;gap:12px;margin:0 0 20px;padding:0;list-style:none}.ticket-service-card{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 20px;border:1px solid #d6e2da;border-radius:12px;background:#fff;box-shadow:0 6px 20px #1d42300f}.ticket-service-card.is-inactive{background:#f6f6f6}.ticket-service-card-main h3{margin:0;font-size:18px}.ticket-service-default-count{margin:4px 0 0;color:#52615a;font-size:13px;font-weight:700}.ticket-service-card-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.ticket-service-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px 16px;align-items:end;width:100%}.ticket-service-form label{display:grid;gap:4px;color:#39483f;font-size:12px;font-weight:800}.ticket-service-form input{padding:9px 10px;border:1px solid #afbeb5;border-radius:7px;background:#fff}.ticket-service-form .detail-actions{grid-column:1 / -1;margin-top:0}.appointment-ticket-section{margin-top:12px;padding-top:10px;border-top:1px dashed #ccd5cf}.appointment-ticket-section h4,.appointment-detail-section-heading{display:flex;align-items:center;justify-content:space-between;margin:0 0 6px;font-size:13px;color:#365d49}.appointment-detail-section-heading{box-sizing:border-box;padding-right:48px}.appointment-ticket-manage-link{font-size:11px;font-weight:600;color:#7a8983;text-decoration:underline}.appointment-ticket-manage-link:hover,.appointment-ticket-manage-link:focus-visible{color:#52615a}.appointment-ticket-list{display:grid;gap:8px;margin:0 0 8px;padding:0;list-style:none}.appointment-ticket-list li{padding:8px;border:1px solid #d6e2da;border-radius:7px}.appointment-ticket-headline{margin:0 0 4px;color:#17221d;font-size:15px;font-weight:850}.ticket-shared-inline{margin-left:8px;padding:2px 7px;border-radius:999px;background:#e8f3ec;color:#216749;font-size:11px;font-weight:800;vertical-align:middle}.appointment-ticket-list .checkbox-label{margin:0!important}.appointment-ticket-used-row{padding:8px;border:1px solid #d6e2da;border-radius:7px;margin-bottom:6px}.appointment-ticket-used-line{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#216749;font-size:13px;font-weight:800}.appointment-reminder-row{margin-top:12px;padding-top:10px;border-top:1px dashed #ccd5cf}.appointment-reminder-row .checkbox-label{margin:0!important}.appointment-reminder-status{margin:6px 0 0;font-size:12px;font-weight:700}.appointment-reminder-status.is-info{color:#52615a}.appointment-reminder-status.is-success{color:#216749}.appointment-reminder-status.is-warning{color:#a5541f}.appointment-no-show-notice{margin:4px 0 0;font-size:12px;font-weight:700;color:#a5541f}@media(pointer:coarse){.ticket-account-card button,.ticket-service-card button,.ticket-inline-form button,.confirm-panel button,.appointment-ticket-list input,.appointment-ticket-used-row button,.appointment-reminder-row input{min-height:42px}.ticket-search-results a{min-height:44px}}.qr-checkin-page{width:min(480px,calc(100% - 40px));min-width:0;max-width:480px;box-sizing:border-box}.qr-checkin-page .page-header,.qr-checkin-page .header-actions,.qr-scan-section,.qr-history-section{width:100%;min-width:0;max-width:100%;box-sizing:border-box}.qr-checkin-page .page-header>div:first-child{flex:0 0 auto}.qr-checkin-page .page-header h1{white-space:nowrap}.qr-checkin-title{margin:0 0 6px;color:#17221d;font-size:22px;font-weight:900}.qr-checkin-hint{margin:0 0 14px;color:#52615a}.qr-checkin-notice{margin:0 0 14px;padding:10px 14px;border-radius:8px;background:#fff7df;color:#73571c;font-weight:700}.qr-sound-status{margin:0 0 4px;color:#39483f;font-size:13px;font-weight:800}.qr-sound-toggle{margin:0 0 8px;font-weight:800}.qr-sound-inline{display:flex;align-items:center;gap:8px;margin:0 0 8px}.qr-sound-inline .qr-sound-status,.qr-sound-inline .qr-sound-toggle{margin:0}.qr-sound-unlock{margin-bottom:12px}.qr-audio-debug{margin:-6px 0 12px;color:#7a8780;font-size:11px;font-family:monospace}.qr-dev-reset-box{margin:20px 0 0;padding:12px 14px;border:2px dashed #b3541c;border-radius:10px;background:#fff3e8}.qr-dev-reset-label{margin:0 0 6px;color:#b3541c;font-size:11px;font-weight:900;letter-spacing:.02em}.qr-dev-reset-button{border-color:#b3541c;color:#b3541c}.qr-dev-reset-result{margin:8px 0 0;color:#1f8f5f;font-size:13px;font-weight:700}.qr-scanner-input{display:block;width:100%;min-height:64px;margin:0 0 20px;padding:0 16px;border:2px dashed #35795a;border-radius:14px;background:#f7fbf8;color:transparent;font-size:16px;text-align:center;caret-color:#35795a}.qr-scanner-input:focus{outline:2px solid #35795a;outline-offset:2px;background:#eaf6ee}.qr-scan-area{position:relative;width:100%;min-width:0;max-width:100%;aspect-ratio:1 / 1;margin-bottom:14px;overflow:hidden;border:2px solid #35795a;border-radius:14px;background:#10241a;box-sizing:border-box}.qr-scan-video{position:absolute;inset:0;display:block;width:100%;min-width:0;max-width:100%;height:100%;object-fit:cover}.qr-scan-canvas{display:none}.qr-history-open{width:100%;margin-top:10px}.qr-continue-button{width:100%;margin:4px 0 10px}.qr-insurance-claim-exclusion-warning{margin:8px 0 0;padding:10px 14px;border:2px solid #b3541c;border-radius:10px;background:#fff3e8;color:#8a3a10;font-size:15px;font-weight:900;text-align:center}.qr-checkin-toast{position:fixed;top:14px;left:50%;z-index:200;transform:translate(-50%);width:min(360px,calc(100% - 24px));padding:16px 20px;border-radius:14px;box-shadow:0 8px 26px #0a1d1338;text-align:center}.qr-checkin-toast.success{border:2px solid #35795a;background:#f7fbf8;color:#17221d}.qr-checkin-toast.error{border:2px solid #b94a4a;background:#fff0f0;color:#8f3030}.qr-checkin-toast-headline{margin:0;font-size:20px;font-weight:900}.qr-checkin-toast-patient{margin:6px 0 0;font-size:24px;font-weight:900;font-variant-numeric:tabular-nums}.qr-history-count{margin:0 0 12px;color:#52615a;font-weight:700}.qr-history-list{display:grid;gap:6px;margin:0 0 16px;padding:0;list-style:none}.qr-history-row{display:grid;grid-template-columns:60px 70px 1fr 40px;align-items:center;gap:8px;padding:9px 10px;border:1px solid #d6e2da;border-radius:7px;background:#fafcfb;font-size:13px}.qr-history-time{font-variant-numeric:tabular-nums;font-weight:800}.qr-history-number{color:#216749;font-weight:800;font-variant-numeric:tabular-nums}.qr-history-name{font-weight:700}.qr-history-method{justify-self:end;padding:2px 6px;border-radius:5px;background:#e4f2e9;color:#26704d;font-size:11px;font-weight:800}.qr-history-empty{margin:0 0 16px;color:#6e7973}@media(pointer:coarse){.qr-history-open,.qr-continue-button{min-height:46px}}body.line-app{min-width:0;background:#eef3ef}.line-app{width:100%}.line-card-page{--page-bg: #eef3ef;--card-bg: #ffffff;--row-bg: #f0f7f2;--accent: #5db7b7;--accent-soft: #73c8c8;--heading: #397f82;--border: #cdeef0;min-height:100vh;background:var(--page-bg)}.theme-spring{--page-bg: #f4faf4;--card-bg: #fcfffc;--row-bg: #eef7ec;--accent: #8dbf8b;--accent-soft: #a8cfa3;--heading: #547a55;--border: #cfe4cd}.theme-sakura{--page-bg: #fff5f7;--card-bg: #fffbfb;--row-bg: #fdf1f3;--accent: #e8a7b4;--accent-soft: #f3bdc8;--heading: #9a5e6b;--border: #f6d7dd}.theme-summer,.theme-tanabata{--page-bg: #edf9fa;--card-bg: #ffffff;--row-bg: #f0f7f2;--accent: #5db7b7;--accent-soft: #73c8c8;--heading: #397f82;--border: #cdeef0}.theme-autumn,.theme-halloween{--page-bg: #fbf7f0;--card-bg: #fff9f2;--row-bg: #f9efe3;--accent: #c88b52;--accent-soft: #d6a269;--heading: #805d3e;--border: #ecd8bd}.theme-winter{--page-bg: #f5fafd;--card-bg: #ffffff;--row-bg: #eef5fa;--accent: #7faac2;--accent-soft: #9dbfd1;--heading: #496d82;--border: #d9e8f0}.theme-christmas{--page-bg: #f5fafd;--card-bg: #ffffff;--row-bg: #eef5f0;--accent: #52715d;--accent-soft: #b86a6a;--heading: #3f5a49;--border: #cfe0d3}.theme-newyear{--page-bg: #fffbf5;--card-bg: #ffffff;--row-bg: #fdf3ec;--accent: #b95f5f;--accent-soft: #c5a25a;--heading: #76534e;--border: #ecdac2}.line-card-decoration{position:absolute;inset:0;z-index:1;pointer-events:none}.line-card-decoration-icon{position:absolute;top:10px;right:16px;display:block;max-height:70px;pointer-events:none;-webkit-user-select:none;user-select:none}.line-card-content{position:relative;z-index:2}.line-card-shell{position:relative;z-index:0;box-sizing:border-box;width:100%;max-width:440px;margin:0 auto;padding:20px 16px 40px;font-size:15px;line-height:1.6}.line-card-header{margin-bottom:18px;text-align:center}.line-card-brand-logo{display:block;width:min(300px,100%);max-width:100%;height:auto;max-height:80px;margin:0 auto 8px;object-fit:contain;object-position:center}.line-card-header h1{margin:0;color:var(--heading);font-size:22px}.line-card-name{margin:0 0 14px;color:#17221d;font-size:19px;font-weight:800;text-align:center}.line-card-facts{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0 0 20px;padding:14px;border:1px solid var(--border);border-top:3px solid var(--accent);border-radius:12px;background:var(--card-bg)}.line-card-facts div{min-width:0}.line-card-facts dt{margin:0 0 3px;color:#6e7973;font-size:12px;font-weight:700}.line-card-facts dd{margin:0;color:#17221d;font-size:16px;font-weight:800;overflow-wrap:break-word}.line-upcoming-section{padding:14px;border:1px solid var(--border);border-radius:12px;background:var(--card-bg)}.line-upcoming-section h2{margin:0 0 10px;color:var(--heading);font-size:15px}.line-upcoming-list{display:grid;gap:8px;margin:0;padding:0;list-style:none}.line-upcoming-row{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding:10px 12px;border-radius:9px;background:var(--row-bg)}.line-upcoming-date{color:#263d32;font-size:14px;font-weight:750}.line-upcoming-time{color:#17221d;font-size:17px;font-weight:800;font-variant-numeric:tabular-nums;white-space:nowrap}.line-upcoming-empty{margin:0;color:#6e7973;font-size:13px}.line-reminder-control{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:12px;padding-top:10px;border-top:1px dashed var(--border)}.line-reminder-control .checkbox-label{margin:0!important}.line-reminder-change{padding:2px 10px;border:1px solid var(--border);border-radius:999px;background:var(--row-bg);color:#17221d;font:inherit;font-size:12px;font-weight:700}.line-reminder-dialog-backdrop{position:fixed;inset:0;z-index:1200;display:grid;place-items:center;padding:18px;background:#12251a94}.line-reminder-dialog{box-sizing:border-box;width:min(100%,340px);padding:18px 16px max(16px,env(safe-area-inset-bottom));border-radius:16px;background:#fff;box-shadow:0 18px 55px #00000047}.line-reminder-dialog p{margin:0 0 12px;color:#263d32;font-size:14px;font-weight:700}.line-reminder-dialog-options{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.line-reminder-dialog-options button{min-height:44px;padding:8px 6px;border:1px solid #b8c8bf;border-radius:10px;background:#fff;color:#17221d;font:inherit;font-weight:800}.line-reminder-dialog-cancel{width:100%;margin-top:12px;min-height:44px;padding:8px 12px;border:none;border-radius:10px;background:transparent;color:#6e7973;font:inherit;font-weight:700}.line-ticket-section{margin-top:16px;padding:14px;border:1px solid var(--border);border-radius:12px;background:var(--card-bg)}.line-ticket-section h2{margin:0 0 10px;color:var(--heading);font-size:15px}.line-ticket-list{display:grid;gap:8px;margin:0;padding:0;list-style:none}.line-ticket-row{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding:10px 12px;border-radius:9px;background:var(--row-bg)}.line-ticket-name{color:#263d32;font-size:14px;font-weight:750}.line-ticket-remaining{color:#17221d;font-size:17px;font-weight:800;font-variant-numeric:tabular-nums;white-space:nowrap}.line-ticket-row-tappable{all:unset;box-sizing:border-box;display:flex;width:100%;align-items:baseline;justify-content:space-between;gap:10px;padding:10px 12px;border-radius:9px;background:var(--row-bg);cursor:pointer;text-align:left}.line-ticket-row-chevron{color:#6e7973;font-size:15px}.line-ticket-history-backdrop{position:fixed;inset:0;z-index:1200;display:grid;place-items:center;padding:18px;background:#12251a94}.line-ticket-history-modal{box-sizing:border-box;width:min(100%,380px);max-height:min(80vh,560px);overflow-y:auto;padding:20px 18px max(18px,env(safe-area-inset-bottom));border-radius:16px;background:#fff;box-shadow:0 18px 55px #00000047}.line-ticket-history-modal h2{margin:0 0 4px;color:#263d32;font-size:17px}.line-ticket-history-service-name{margin:0 0 14px;color:#6e7973;font-size:13px}.line-ticket-history-list{display:grid;gap:8px;margin:0 0 14px;padding:0;list-style:none}.line-ticket-history-row{display:flex;align-items:baseline;justify-content:space-between;gap:8px;padding:8px 10px;border-radius:8px;background:var(--row-bg);font-size:13px}.line-ticket-history-date{color:#17221d;font-weight:700;white-space:nowrap}.line-ticket-history-patient{flex:1;overflow:hidden;padding:0 6px;color:#33483d;font-weight:700;text-overflow:ellipsis}.line-ticket-history-count{color:#17221d;font-weight:800;white-space:nowrap}.line-ticket-history-empty{margin:0 0 14px;color:#6e7973;font-size:13px}.line-ticket-history-note{margin:0 0 14px;color:#6e7973;font-size:12px;line-height:1.6}.line-ticket-history-close{width:100%;min-height:44px;padding:8px 12px;border:1px solid #b8c8bf;border-radius:10px;background:#fff;color:#17221d;font:inherit;font-weight:800}.line-card-theme-message{margin:16px 0 0;text-align:center;color:var(--heading);font-size:12px;font-weight:700;opacity:.85}.line-card-booking-link{display:flex;align-items:center;justify-content:center;min-height:48px;margin:0 0 20px;padding:12px 16px;border-radius:12px;background:var(--heading);color:#fff;font-size:16px;font-weight:850;text-align:center;text-decoration:none;box-shadow:0 6px 16px #1428202e}.line-card-booking-link:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.line-patient-switcher,.line-access-section{margin-top:18px;padding:16px;border:1px solid rgba(37,94,69,.2);border-radius:14px;background:#ffffffe0}.line-patient-switcher h2,.line-access-section h2{margin:0 0 10px;color:var(--heading);font-size:17px}.line-patient-switcher select,.line-access-form input,.line-access-form select{box-sizing:border-box;width:100%;min-height:44px;padding:9px 11px;border:1px solid #aebdb5;border-radius:9px;background:#fff;font:inherit}.line-access-form input{font-size:16px}.line-access-form{display:grid;gap:12px}.line-access-form label{display:grid;gap:5px;font-size:14px;font-weight:700}.line-birth-date-label{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 8px;min-width:0}.line-birth-date-label small{color:#69776f;font-size:11px;font-weight:500;line-height:1.45}.line-phone-guidance{display:grid;gap:2px;color:#69776f;font-size:12px;font-weight:500;line-height:1.5}.line-access-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 0;border-top:1px solid rgba(37,94,69,.12)}.line-access-row>div{display:flex;gap:8px}.line-access-alert{margin-top:12px;border:2px solid #d99325;background:#fff8e8;box-shadow:0 5px 15px #754a081f}.line-access-alert h2{display:flex;align-items:center;justify-content:space-between;gap:8px}.line-access-alert h2 span{display:inline-flex;align-items:center;justify-content:center;min-width:32px;min-height:28px;padding:1px 9px;border-radius:999px;background:#b86416;color:#fff;font-size:13px}.line-access-decisions form{display:flex}.line-access-decisions button{box-sizing:border-box;min-width:96px;min-height:44px;margin:0;padding:9px 14px;white-space:nowrap}.line-access-account-operation{border-style:dashed}.line-access-message{margin:12px 0;padding:10px 12px;border-radius:9px}.line-access-message.is-success{background:#e8f5ed;color:#205d3d}.line-access-message.is-error{background:#fff0f0;color:#8b2929}.line-family-card-list{display:grid;gap:16px}.line-family-card-list form,.line-family-actions form,.line-family-top-back{margin:0}.line-family-card-row{display:grid;gap:5px;padding:2px 0 6px}.line-family-card-link,.line-family-back{display:flex;align-items:center;justify-content:space-between;box-sizing:border-box;width:100%;min-height:48px;padding:11px 4px;border:0;border-radius:0;background:transparent;color:#263d32;font:inherit;font-weight:800;text-align:left}.line-family-remove-link{justify-self:end;padding:6px 4px;border:0;background:transparent;color:var(--heading);font:inherit;font-size:12px;text-decoration:none}.line-family-confirm-backdrop{position:fixed;inset:0;z-index:1200;display:grid;place-items:center;padding:18px;background:#12251a94}.line-family-confirm{box-sizing:border-box;width:min(100%,380px);padding:20px 18px max(18px,env(safe-area-inset-bottom));border-radius:16px;background:#fff;box-shadow:0 18px 55px #00000047}.line-family-confirm h2{margin:0 0 10px;color:#263d32;font-size:19px}.line-family-confirm p{margin:0;color:#39483f;line-height:1.7}.line-family-confirm-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:18px}.line-family-confirm-actions form{margin:0}.line-family-confirm-actions button{box-sizing:border-box;width:100%;min-height:48px;padding:10px 12px;border:1px solid #b8c8bf;border-radius:10px;background:#fff;color:#33483d;font:inherit;font-weight:800}.line-family-confirm-actions .danger-button{border-color:#a63e3e;background:#a63e3e;color:#fff}.line-family-add{margin-top:12px;border-top:1px solid rgba(37,94,69,.12)}.line-family-add summary{padding-top:12px;color:var(--heading);font-weight:800;cursor:pointer}.line-family-add>p{margin:10px 0;color:#52615a;font-size:13px}.line-family-add-error{margin:0;white-space:pre-line}.line-family-actions{display:grid;gap:10px;margin-top:16px}.line-family-actions .secondary-button{width:100%;min-height:46px}.line-family-add-submit{min-height:46px;border:0;border-radius:10px;background:var(--heading);color:#fff;font:inherit;font-weight:800}.line-family-add-submit:disabled{cursor:wait;opacity:.62}.line-family-top-back{position:relative;z-index:2;align-self:flex-start;margin-bottom:4px}.line-family-top-back button{min-height:44px;padding:6px 8px;border:0;background:transparent;color:var(--heading);font:inherit;font-weight:800}@media(max-width:430px){.line-access-row{align-items:stretch;flex-direction:column}}.line-checkin-section{margin:0 0 20px;padding:16px;border:1px solid var(--border);border-radius:12px;background:var(--card-bg);text-align:center;scroll-margin:24px 0}.line-checkin-section h2{margin:0 0 8px;color:var(--heading);font-size:15px}.line-checkin-hint{margin:0 0 12px;color:#52615a;font-size:12px}.line-checkin-qr{display:flex;justify-content:center}.line-checkin-qr svg{display:block;width:168px;height:168px;aspect-ratio:1 / 1;flex-shrink:0}.line-card-toast{position:fixed;top:14px;left:50%;transform:translate(-50%);z-index:1000;max-width:calc(100% - 32px);padding:12px 22px;border-radius:999px;background:#1f8f5f;color:#fff;font-size:15px;font-weight:800;text-align:center;box-shadow:0 6px 18px #00000038}@media(max-width:360px){.line-card-decoration-icon{top:8px;right:12px;max-height:60px}}.line-verify-intro{margin:0 0 16px;color:#4f6258;font-size:13px;line-height:1.6}.line-verify-form{display:grid;gap:14px}.line-verify-form label{display:grid;gap:6px;color:#39483f;font-size:13px;font-weight:800}.line-verify-form input{width:100%;min-height:46px;padding:10px 12px;border:1px solid #b9c7bf;border-radius:8px;background:#fff;color:#17221d;font-size:16px}.line-verify-form input:focus{outline:2px solid #3d8963;outline-offset:1px}.line-dev-token-field{padding:8px 10px;border:1px dashed #c9b26a;border-radius:8px;background:#fff8e8;color:#6d551f;font-size:11px}.line-dev-token-field input{min-height:40px;font-size:13px}.line-primary-button{width:100%;min-height:48px;border:0;border-radius:9px;background:#216749;color:#fff;font-size:16px;font-weight:800;cursor:pointer}.line-primary-button:active{background:#184e37}.line-card-page .field-error,.line-verify-page .field-error{font-size:12px}.line-verify-help{margin-top:18px;border-top:1px solid #d7e0da;color:#405249}.line-verify-help summary{padding:14px 2px 2px;color:#2f654b;font-size:13px;font-weight:800;cursor:pointer}.line-verify-help-body{padding:10px 2px 0;font-size:13px;line-height:1.7}.line-verify-help-body p{margin:0 0 8px}.line-verify-help-body p:last-child{margin-bottom:0}.line-verify-first-visit{display:block;margin-top:18px;padding:16px 18px;border-radius:14px;background:#e6f4ea;text-decoration:none}.line-verify-first-visit:active{background:#d7ecdd}.line-verify-first-visit:focus-visible{outline:2px solid #3d8963;outline-offset:2px}.line-verify-first-visit-title{display:block;color:#1f5c3f;font-size:16px;font-weight:800}.line-verify-first-visit-note{display:block;margin-top:4px;color:#3f5b4c;font-size:12.5px;line-height:1.6}.line-verify-preview-note{margin:16px 0 0;color:#69776f;font-size:11px;line-height:1.5;text-align:center}.patient-services-page{width:100%;min-width:0;max-width:100%;min-height:100vh;min-height:100dvh;padding:max(20px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(36px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));overflow-x:hidden;background:#eef3ef;color:#263d32}.patient-services-shell{width:min(760px,100%);min-width:0;max-width:100%;margin:0 auto}.patient-services-hero{margin:0 0 22px;padding:24px 20px;border:1px solid #cfe0d6;border-radius:16px;background:#fff;box-shadow:0 8px 24px #1a473112}.patient-services-eyebrow{margin:0 0 5px;color:#39765a;font-size:13px;font-weight:800;letter-spacing:.08em}.patient-services-brand-logo{display:block;width:clamp(190px,44vw,280px);max-width:100%;height:auto;max-height:74px;margin:0 auto 9px;object-fit:contain;object-position:center}.patient-services-hero h1{margin:0 0 12px;color:#245c43;font-size:clamp(24px,6.5vw,31px);line-height:1.3}.patient-services-hero>p:not(.patient-services-eyebrow){margin:0;color:#4b5f55;font-size:14px;line-height:1.8}.patient-services-hero strong{color:#245c43}.patient-services-price-jump,.patient-services-action-link,.patient-services-result-actions a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;margin-top:14px;padding:9px 14px;border:1px solid #87ae98;border-radius:9px;background:#f7fbf8;color:#245c43;font-size:14px;font-weight:850;text-align:center}.patient-services-section{margin:0 0 22px}.patient-services-section h2,.patient-services-consult h2{margin:0 0 13px;color:#245c43;font-size:20px;line-height:1.45}.patient-services-step{display:inline-block;margin:0 0 6px;color:#39765a;font-size:11px;font-weight:900;letter-spacing:.08em}.patient-services-guide{padding:20px;border:1px solid #cfe0d6;border-radius:16px;background:#fff}.patient-services-guide-grid,.patient-services-subchoices{display:grid;grid-template-columns:minmax(0,1fr);gap:10px}.patient-services-guide-button{display:grid;align-content:center;gap:5px;width:100%;min-width:0;min-height:88px;padding:14px 16px;border:1px solid #b9d0c2;border-radius:12px;background:#f9fcfa;color:#263d32;text-align:left;text-decoration:none;cursor:pointer}.patient-services-guide-copy{display:grid;gap:5px;min-width:0}.patient-services-guide-button strong{color:#245c43;font-size:16px;line-height:1.45}.patient-services-guide-button span{color:#52615a;font-size:13px;line-height:1.55;overflow-wrap:anywhere}.patient-services-guide-button-with-image{grid-template-columns:minmax(0,1fr) auto;align-items:center;min-height:112px}.patient-services-entry-image{display:block;flex-shrink:0;width:clamp(58px,17vw,76px);max-width:76px;height:84px;max-height:84px;object-fit:contain}.patient-services-course-choice-image{width:clamp(64px,18vw,84px);max-width:84px;height:90px;max-height:90px;border:0;outline:0;background:transparent;box-shadow:none;object-fit:contain}.patient-services-course-choice-image-wide{width:clamp(72px,20vw,92px);max-width:92px}.patient-services-balance-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(120px,180px);align-items:center;gap:18px;min-width:0;margin:0 0 16px;padding:16px 18px;border-left:5px solid #d2a85b;border-radius:12px;background:#fbf3d8;color:#6f5a2f;font-size:16px;font-weight:800;line-height:1.75}.patient-services-balance-intro div{min-width:0}.patient-services-balance-intro p{margin:0;overflow-wrap:anywhere}.patient-services-balance-intro p+p{margin-top:6px}.patient-services-balance-intro img{display:block;width:100%;max-width:180px;height:118px;margin:0 auto;border:0;outline:0;background:transparent;box-shadow:none;object-fit:contain}.patient-services-guide-button:hover,.patient-services-guide-button[aria-pressed=true]{border-color:#39765a;background:#eaf5ee}.patient-services-guide-button:focus-visible,.patient-services-reselect:focus-visible,.patient-services-price-jump:focus-visible,.patient-services-action-link:focus-visible,.patient-services-result-actions a:focus-visible,.patient-services-primary-action:focus-visible{outline:3px solid #65a27f;outline-offset:2px}.patient-services-guide-result{min-width:0}.patient-services-reselect{min-height:44px;margin:0 0 12px;padding:8px 12px;border:0;border-radius:8px;background:transparent;color:#39765a;font-weight:850;cursor:pointer}.patient-services-result-card{min-width:0}.patient-services-result-card>p{color:#4b5f55;font-size:14px;line-height:1.75;overflow-wrap:anywhere}.patient-services-result-label{margin:0 0 5px;color:#39765a!important;font-size:12px!important;font-weight:900;letter-spacing:.04em}.patient-services-recommend-result-image{display:block;width:clamp(110px,30vw,140px);max-width:100%;height:auto;margin:14px auto 16px;border:0;outline:0;background:transparent;box-shadow:none;object-fit:contain}.patient-services-result-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.patient-services-result-actions .patient-services-reset{margin:14px 0 0;border:1px solid #a6b9ae;background:#fff}.patient-services-subchoices{margin:12px 0}.patient-services-recommendation{margin:12px 0;padding:14px;border-left:4px solid #65a27f;border-radius:0 10px 10px 0;background:#eef7f1}.patient-services-recommendation strong{color:#245c43;font-size:17px}.patient-services-recommendation p{margin:5px 0 0;color:#46594f;font-size:13px;line-height:1.65}.patient-services-reassurance{margin-top:16px!important;padding:14px;border-radius:10px;background:#eef7f1}.patient-services-reassurance h3{margin:2px 0 12px;color:#245c43;font-size:clamp(20px,5.5vw,23px);font-weight:800;line-height:1.35;text-align:center;white-space:nowrap}.patient-services-reassurance p{margin:0;color:#4b5f55;font-size:14px;line-height:1.75;overflow-wrap:anywhere}.patient-services-chronic-image{display:block;max-width:100%;height:auto;margin-right:auto;margin-left:auto;border:0;outline:0;border-radius:0;background:transparent;box-shadow:none;object-fit:contain}.patient-services-chronic-pain-image{width:clamp(130px,36vw,160px);margin-top:14px;margin-bottom:16px}.patient-services-chronic-treatment-image{width:clamp(220px,70vw,350px);margin-top:16px;margin-bottom:2px}.patient-services-entry-intro{margin:0 0 14px;color:#52615a;font-size:14px;line-height:1.7;overflow-wrap:anywhere}.patient-services-primary-action{display:inline-flex;align-items:center;justify-content:center;min-height:44px;margin-top:14px;padding:10px 16px;border:1px solid #286b4c;border-radius:9px;background:#286b4c;color:#fff;font-size:14px;font-weight:850;cursor:pointer}.patient-services-health-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:9px}.patient-services-health-choice{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;width:100%;min-width:0;min-height:96px;padding:11px 13px;border:1px solid #b9d0c2;border-radius:11px;background:#f9fcfa;color:#245c43;font-size:14px;font-weight:850;line-height:1.45;text-align:left;overflow-wrap:anywhere;cursor:pointer}.patient-services-health-choice span{min-width:0;color:inherit;font:inherit;overflow-wrap:anywhere}.patient-services-health-choice img{display:block;flex-shrink:0;width:clamp(64px,18vw,84px);max-width:84px;height:82px;max-height:82px;border:0;outline:0;background:transparent;box-shadow:none;object-fit:contain}.patient-services-health-choice:hover{border-color:#39765a;background:#eaf5ee}.patient-services-health-choice:focus-visible,.patient-services-health-products button:focus-visible{outline:3px solid #65a27f;outline-offset:2px}.patient-services-health-result h3{margin:20px 0 10px;color:#245c43;font-size:17px}.patient-services-health-result-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;min-width:0;margin-bottom:12px}.patient-services-health-result-heading h2{min-width:0;margin:0;overflow-wrap:anywhere}.patient-services-health-result-heading img{display:block;flex-shrink:0;width:clamp(68px,19vw,92px);max-width:92px;height:88px;max-height:88px;border:0;outline:0;background:transparent;box-shadow:none;object-fit:contain}.patient-services-health-point{margin-top:18px;padding:14px 15px;border-left:4px solid #8db89f;border-radius:0 10px 10px 0;background:#f5faf7}.patient-services-health-point h3{margin-top:0}.patient-services-health-point p{margin:7px 0 0}.patient-services-diet-options{display:grid;gap:12px;margin-top:18px}.patient-services-diet-options section{padding:15px;border:1px solid #e1c77f;border-radius:12px;background:#fff9e8}.patient-services-diet-options h3{margin-top:3px}.patient-services-diet-options p{margin:8px 0 0}.patient-services-diet-kicker{color:#806123;font-size:13px;font-weight:900}.patient-services-health-product-group{margin-top:20px;padding:14px;border-radius:12px}.patient-services-health-product-group h3{margin-top:0}.patient-services-health-product-main{border:1px solid #a9c9b5;background:#edf7f1}.patient-services-health-product-support{border:1px solid #dfd6bc;background:#fbf8ef}.patient-services-health-products{display:grid;grid-template-columns:minmax(0,1fr);gap:9px}.patient-services-health-product-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;min-width:0;min-height:50px;padding:12px 14px;border:1px solid #d4e1da;border-radius:11px;background:#fff;color:inherit;text-decoration:none}.patient-services-health-products strong{color:#245c43;font-size:16px;overflow-wrap:anywhere}.patient-services-health-products span{color:#52615a;font-size:12px;line-height:1.55}.patient-services-health-product-coming-soon{text-align:right}.patient-services-diet-consult{margin-top:22px;padding:16px;border-left:5px solid #d2a85b;border-radius:12px;background:#fbf3d8;color:#6f5a2f}.patient-services-diet-consult strong{display:block;line-height:1.7}.patient-services-diet-consult p{margin:8px 0 0}.patient-services-diet-consult .patient-services-action-link{margin-top:14px}.patient-services-health-consult{margin-top:20px;padding:15px;border-radius:11px;background:#e8f3ec}.patient-services-health-consult p{margin:0;color:#315e47;font-size:14px;font-weight:800;line-height:1.6}.patient-services-diet-program{margin-right:8px}.patient-services-diet-notebook{padding:clamp(16px,4vw,30px);border-color:#ddcfaa;background-color:#fffdf5;background-image:repeating-linear-gradient(0deg,transparent 0,transparent 31px,rgba(119,165,128,.09) 32px)}.patient-services-diet-program-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,270px);align-items:center;gap:20px;padding:clamp(18px,4vw,28px);border:2px solid #d9cb91;border-radius:18px;background:linear-gradient(140deg,#fffef8,#eef8dd 58%,#ffe8ee);box-shadow:5px 6px #c2aa6826}.patient-services-diet-program-hero h2{margin:0;color:#b5192f;font-size:clamp(31px,8vw,48px);letter-spacing:.03em}.patient-services-diet-program-hero h3{margin:12px 0;color:#3b6347;font-size:clamp(19px,4.5vw,24px);line-height:1.55}.patient-services-diet-program-hero p{margin:7px 0 0;color:#545b52;line-height:1.8}.patient-services-diet-program-hero img{display:block;width:min(270px,100%);max-width:100%;height:auto;max-height:230px;border:0;background:transparent;box-shadow:none;object-fit:contain}.patient-services-diet-program-kicker{color:#7e9d47!important;font-size:13px!important;font-weight:950;letter-spacing:.13em}.patient-services-diet-note-section,.patient-services-diet-nutrition-section,.patient-services-diet-action-section{margin-top:22px;padding:clamp(17px,4vw,25px);border:1px solid #ded2b0;border-radius:16px;background:#fffffaed;box-shadow:3px 4px #789d5b17}.patient-services-diet-note-section h2,.patient-services-diet-nutrition-section h2,.patient-services-diet-action-section h2{margin:3px 0 13px;color:#315d42;font-size:clamp(20px,4.8vw,26px);line-height:1.55}.patient-services-diet-note-section p,.patient-services-diet-nutrition-section p,.patient-services-diet-action-section p{margin:8px 0 0;color:#535c54;line-height:1.8}.patient-services-diet-note-number{margin:0!important;color:#c1283e!important;font-size:12px!important;font-weight:950;letter-spacing:.12em}.patient-services-energy-balance{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:10px;margin:17px 0}.patient-services-energy-balance span{min-width:0;padding:13px 10px;border-radius:12px;background:#eef6df;color:#3d6749;font-weight:850;text-align:center}.patient-services-energy-arrow{display:block;width:42px;height:16px;background:#c45d70;clip-path:polygon(0 50%,10px 0,10px 4px,calc(100% - 10px) 4px,calc(100% - 10px) 0,100% 50%,calc(100% - 10px) 100%,calc(100% - 10px) 12px,10px 12px,10px 100%)}.patient-services-diet-caution-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.patient-services-diet-caution-grid article{min-width:0;padding:14px;border-left:5px solid #e88ea1;border-radius:10px;background:#fff2f5;color:#5e4f52;line-height:1.65}.patient-services-diet-core-message{margin-top:22px;padding:clamp(20px,5vw,30px);border:3px solid #94b85d;border-radius:18px;background:linear-gradient(135deg,#f4fadf,#fff8df);text-align:center}.patient-services-diet-core-message>p:first-child{margin:0;color:#b12039;font-size:13px;font-weight:950;letter-spacing:.08em}.patient-services-diet-core-message h2{margin:8px 0 13px;color:#345f41;font-size:clamp(21px,5vw,29px);line-height:1.55}.patient-services-diet-core-message p{margin:7px 0 0;color:#4e5a4f;line-height:1.8}.patient-services-diet-big-fact,.patient-services-amino-score{display:grid;justify-items:center;margin-top:17px;padding:17px;border-radius:15px;background:linear-gradient(135deg,#c51a34,#eb6680);color:#fff;text-align:center}.patient-services-diet-big-fact span,.patient-services-amino-score span{font-size:13px;font-weight:850}.patient-services-diet-big-fact strong{margin-top:3px;font-size:clamp(23px,6vw,34px)}.patient-services-diet-note-section h3{margin:20px 0 8px;color:#a22438;font-size:clamp(18px,4.2vw,22px)}.patient-services-diet-story-bridge{color:#a22438!important;font-size:clamp(18px,4.5vw,24px);font-weight:900;text-align:center}.patient-services-diet-plan-lead{margin-bottom:18px!important;font-size:clamp(17px,4vw,21px);text-align:center}.patient-services-diet-phases{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.patient-services-diet-phases article{min-width:0;padding:16px;border-radius:14px;background:#fffaf0;border:1px solid #e3d0a3}.patient-services-diet-phases article>span{display:inline-block;padding:4px 12px;border-radius:999px;background:#c1283e;color:#fff;font-weight:900}.patient-services-diet-phases h3{margin:10px 0 6px}.patient-services-diet-timeline{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1.35fr) auto minmax(0,1fr) auto minmax(0,1fr);align-items:stretch;gap:8px;margin-top:18px}.patient-services-diet-timeline>div{display:grid;align-content:center;gap:5px;min-width:0;padding:13px 10px;border-radius:12px;background:#edf5e6;color:#315d42;text-align:center}.patient-services-diet-timeline span{font-size:12px;font-weight:900}.patient-services-diet-timeline strong{font-size:14px;line-height:1.5}.patient-services-diet-timeline>b{align-self:center;color:#c1283e;font-size:22px;transform:rotate(-90deg)}.patient-services-diet-timeline-message{color:#315d42!important;font-weight:900;text-align:center}.patient-services-amino-score{width:min(310px,100%);margin-right:auto;margin-left:auto;border-radius:50%/18%;background:linear-gradient(145deg,#79a94d,#a7c869)}.patient-services-amino-score strong{font-size:clamp(48px,12vw,72px);line-height:1.1}.patient-services-diet-nutrition-section{border:3px solid #d7b85d;background:linear-gradient(145deg,#fffef8,#fff4cd);text-align:center}.patient-services-diet-calorie{display:inline-flex;align-items:baseline;gap:6px;margin:6px 0 17px;color:#c21d36}.patient-services-diet-calorie strong{font-size:clamp(58px,15vw,88px);line-height:1}.patient-services-diet-calorie span{font-size:22px;font-weight:900}.patient-services-diet-nutrition-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.patient-services-diet-nutrition-grid article{display:grid;align-content:center;min-width:0;min-height:84px;padding:10px 7px;border-radius:11px;background:#fff;color:#445d47}.patient-services-diet-nutrition-grid article strong{font-size:16px;overflow-wrap:anywhere}.patient-services-diet-nutrition-grid article span{margin-top:3px;font-size:11px}.patient-services-diet-nutrition-section h3{margin:22px 0 10px;color:#3c6748}.patient-services-diet-category-list{display:flex;flex-wrap:wrap;justify-content:center;gap:7px}.patient-services-diet-category-list span{padding:7px 10px;border-radius:999px;background:#edf5db;color:#45644a;font-size:12px;font-weight:850;white-space:nowrap}.patient-services-diet-nutrition-section details{margin-top:14px;padding:11px 13px;border-radius:10px;background:#fff;text-align:left}.patient-services-diet-nutrition-section summary{color:#8b5c20;font-weight:900;cursor:pointer}.patient-services-diet-ingredient-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px}.patient-services-diet-ingredient-grid article{min-width:0;padding:14px;border:1px solid #e7d9b2;border-radius:11px;background:#fffaf0}.patient-services-diet-ingredient-grid h4{margin:0 0 7px;color:#486348;font-size:clamp(16px,3.7vw,18px);line-height:1.5}.patient-services-diet-ingredient-grid p{margin:0;color:#565d55;font-size:14px;line-height:1.75;overflow-wrap:anywhere}.patient-services-diet-ingredient-summary{margin:14px 0 0!important;padding:13px 15px;border-radius:10px;background:#eef6df;color:#3e6045!important;font-weight:900;line-height:1.75}.patient-services-diet-ingredient-note{margin:9px 2px 0!important;color:#6c6b63!important;font-size:12px;line-height:1.7}.patient-services-diet-action-section ol{display:grid;gap:10px;margin:0;padding:0;list-style:none;counter-reset:diet-step}.patient-services-diet-action-section li{display:grid;grid-template-columns:38px minmax(0,1fr);column-gap:11px;min-width:0;padding:13px;border-radius:12px;background:#f0f7e5;counter-increment:diet-step}.patient-services-diet-action-section li:before{grid-row:1 / 3;display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#7fa24b;color:#fff;content:counter(diet-step);font-weight:950}.patient-services-diet-action-section li strong{color:#365d40}.patient-services-diet-action-section li span{margin-top:3px;color:#596157;font-size:13px;line-height:1.65}.patient-services-diet-inline-note{margin-top:14px;padding:13px 15px;border-left:5px solid #e3899c;border-radius:10px;background:#fff1f4}.patient-services-diet-inline-note h3{margin:0 0 5px;color:#9a3044}.patient-services-diet-inline-note p{margin:0}.patient-services-diet-two-column{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:22px}.patient-services-diet-two-column article{min-width:0;padding:18px;border-radius:15px;background:#f5f9e9}.patient-services-diet-two-column article:last-child{background:#fff0f3}.patient-services-diet-two-column h2{margin:0 0 9px;color:#3c6547;font-size:19px;line-height:1.45}.patient-services-diet-two-column p{margin:7px 0 0;color:#565d55;line-height:1.75}.patient-services-diet-after-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:14px}.patient-services-diet-after-grid span{min-width:0;padding:10px 12px;border-radius:9px;background:#f1f7e5;color:#456149;font-size:13px;font-weight:800}.patient-services-diet-product-link{margin-top:20px;text-align:center}.patient-services-diet-product-link a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 15px;border:1px solid #b82038;border-radius:9px;color:#9e1930;font-weight:850;text-decoration:none}.patient-services-diet-consult-renewed{border-left-color:#78a34d;background:#f2f8e4;color:#405c45}.patient-services-diet-consult-renewed h2{margin:0 0 9px;color:#355e40}.patient-services-diet-meeting-note{margin:14px 0;padding:12px 14px;border-left:4px solid #c7a258;border-radius:8px;background:#fff9df;color:#5d5638;font-size:clamp(16px,3.8vw,18px);font-weight:850;line-height:1.75}@media(max-width:679px){.patient-services-diet-program-hero{grid-template-columns:minmax(0,1fr)}.patient-services-diet-program-hero img{width:min(360px,100%);max-height:220px;margin:0 auto}.patient-services-diet-nutrition-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.patient-services-diet-two-column,.patient-services-diet-phases,.patient-services-diet-timeline{grid-template-columns:minmax(0,1fr)}.patient-services-diet-timeline>b{transform:none}}@media(max-width:419px){.patient-services-diet-notebook{padding:12px}.patient-services-diet-caution-grid,.patient-services-diet-after-grid,.patient-services-diet-ingredient-grid{grid-template-columns:minmax(0,1fr)}.patient-services-energy-balance{grid-template-columns:minmax(0,1fr);justify-items:center}.patient-services-energy-arrow{transform:rotate(90deg)}.patient-services-diet-category-list span{white-space:normal}.patient-services-diet-nutrition-grid{grid-template-columns:minmax(0,1fr)}}.patient-services-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}.power-enzyme-page{min-height:100vh;overflow-x:clip;background:#fffaf6;color:#4a302d}.power-enzyme-shell{width:min(1080px,calc(100% - 28px));margin:0 auto;padding:22px 0 48px}.power-enzyme-back{display:inline-flex;min-height:44px;align-items:center;margin-bottom:14px;color:#8e2525;font-weight:850;text-decoration:none}.power-enzyme-hero{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.8fr);align-items:center;gap:clamp(20px,5vw,56px);overflow:hidden;padding:clamp(24px,6vw,60px);border-radius:28px;background:linear-gradient(135deg,#fff 0 48%,#fff0e6);box-shadow:0 14px 36px #6614141c}.power-enzyme-hero:before,.power-enzyme-hero:after{position:absolute;z-index:-1;border-radius:50%;content:""}.power-enzyme-hero:before{right:-18%;bottom:-72%;width:72%;aspect-ratio:1;border:clamp(24px,5vw,58px) solid rgba(190,22,30,.16)}.power-enzyme-hero:after{right:13%;top:-24%;width:38%;aspect-ratio:1;border:clamp(12px,3vw,30px) solid rgba(242,94,30,.14)}.power-enzyme-kicker{margin:0;color:#d34b22;font-size:13px;font-weight:900;letter-spacing:.14em}.power-enzyme-hero h1{margin:5px 0 0;color:#9e151f;font-size:clamp(38px,8vw,72px);line-height:1;letter-spacing:.035em}.power-enzyme-name{margin:8px 0 22px;color:#d44727;font-size:18px;font-weight:900;letter-spacing:.08em}.power-enzyme-hero h2{margin:0 0 18px;color:#5f2425;font-size:clamp(23px,4.5vw,34px);line-height:1.55}.power-enzyme-hero-copy>p:not(.power-enzyme-kicker,.power-enzyme-name){margin:8px 0 0;line-height:1.8}.power-enzyme-image-wrap{min-width:0;padding:12px}.power-enzyme-image-wrap img{display:block;width:100%;max-width:460px;height:auto;max-height:470px;margin:auto;border:0;background:transparent;box-shadow:none;object-fit:contain}.power-enzyme-section{position:relative;margin-top:24px;padding:clamp(22px,5vw,38px);border:1px solid #efd9cd;border-radius:22px;background:#fff;box-shadow:0 8px 24px #672b1f0f}.power-enzyme-section h2{margin:0 0 16px;color:#8f2025;font-size:clamp(23px,4.8vw,32px);line-height:1.55}.power-enzyme-section>p{margin:8px 0 0;line-height:1.85}.power-enzyme-eyebrow{color:#e05a27;font-size:13px;font-weight:900;letter-spacing:.08em}.power-enzyme-digestion{border-left:8px solid #e45a27;background:linear-gradient(100deg,#fff,#fff5ed)}.power-enzyme-steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;margin-top:18px}.power-enzyme-steps article{position:relative;min-width:0;padding:16px 11px;border-radius:15px;background:linear-gradient(145deg,#fff3e8,#ffe3d4);text-align:center}.power-enzyme-steps article:not(:last-child):after{position:absolute;top:50%;right:-9px;z-index:1;color:#c62b25;content:"›";font-size:26px;font-weight:900;transform:translate(50%,-50%)}.power-enzyme-steps span{display:grid;place-items:center;width:32px;height:32px;margin:0 auto 8px;border-radius:50%;background:#ba2028;color:#fff;font-weight:900}.power-enzyme-steps h3{margin:0;color:#81262a}.power-enzyme-steps p{margin:7px 0 0;font-size:13px;line-height:1.65}.power-enzyme-digestive-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:20px}.power-enzyme-digestive-grid article{min-width:0;padding:18px;border-top:5px solid #e5632f;border-radius:13px;background:#fff7f1}.power-enzyme-digestive-grid h3{margin:0 0 7px;color:#a62428}.power-enzyme-digestive-grid p{margin:0;line-height:1.7}.power-enzyme-cofactor-section{background:linear-gradient(145deg,#fff,#fff0e4)}.power-enzyme-equation{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1.4fr) auto minmax(0,1.5fr);align-items:center;gap:10px;margin-top:22px}.power-enzyme-equation strong,.power-enzyme-equation span{min-width:0;padding:16px 12px;border-radius:13px;background:#fff;color:#7f2528;text-align:center}.power-enzyme-equation span{background:#b52229;color:#fff;font-weight:900}.power-enzyme-equation b{color:#df5a2a;font-size:25px;text-align:center}.power-enzyme-feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:20px}.power-enzyme-feature-grid article{min-width:0;padding:18px;border-radius:15px;background:#fff5ed}.power-enzyme-feature-grid h3{margin:0 0 8px;color:#9b2025;font-size:21px}.power-enzyme-feature-grid p{margin:0;line-height:1.75}.power-enzyme-feature-grid details{margin-top:12px;padding:10px;border-radius:9px;background:#fff}.power-enzyme-feature-grid summary{color:#9b3d25;font-weight:850;cursor:pointer}.power-enzyme-recommend ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:0;padding:0;list-style:none}.power-enzyme-recommend li{min-width:0;padding:13px 15px;border-left:5px solid #e2612d;border-radius:10px;background:#fff3e8;font-weight:750}.power-enzyme-serving{text-align:center}.power-enzyme-serving strong{display:inline-block;margin-top:16px;padding:10px 18px;border-radius:999px;background:#981e25;color:#fff;font-size:18px}.power-enzyme-consult{margin-top:24px;padding:clamp(24px,6vw,42px);border-radius:22px;background:linear-gradient(135deg,#7c1820,#c72a28 56%,#e86a2c);color:#fff;text-align:center}.power-enzyme-consult h2{margin:0 0 14px;font-size:clamp(23px,5vw,32px)}.power-enzyme-consult p{line-height:1.8}.power-enzyme-consult a{display:inline-flex;min-height:48px;align-items:center;justify-content:center;margin-top:10px;padding:11px 22px;border-radius:999px;background:#fff;color:#921c23;font-weight:900;text-decoration:none}@media(max-width:760px){.power-enzyme-hero{grid-template-columns:minmax(0,1fr)}.power-enzyme-image-wrap{order:-1}.power-enzyme-image-wrap img{max-height:330px}.power-enzyme-steps{grid-template-columns:minmax(0,1fr)}.power-enzyme-steps article:not(:last-child):after{top:auto;right:50%;bottom:-21px;transform:translate(50%) rotate(90deg)}.power-enzyme-equation{grid-template-columns:minmax(0,1fr)}.power-enzyme-equation b:last-of-type{transform:none}}@media(max-width:520px){.power-enzyme-shell{width:min(100% - 20px,1080px)}.power-enzyme-hero{padding:22px 17px;border-radius:20px}.power-enzyme-section{padding:20px 16px}.power-enzyme-digestive-grid,.power-enzyme-feature-grid,.power-enzyme-recommend ul{grid-template-columns:minmax(0,1fr)}.power-enzyme-image-wrap img{max-height:280px}}.urara-page{min-height:100vh;overflow-x:clip;background:#fffaf8;color:#554247}.urara-shell{width:min(1040px,calc(100% - 28px));margin:0 auto;padding:22px 0 48px}.urara-back{display:inline-flex;min-height:44px;align-items:center;margin-bottom:14px;color:#83374f;font-weight:850;text-decoration:none}.urara-hero{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.85fr);align-items:center;gap:clamp(22px,5vw,54px);overflow:hidden;padding:clamp(28px,6vw,62px);border-radius:30px;background:linear-gradient(145deg,#fff 0 47%,#f8e4e7);box-shadow:0 14px 36px #5b1f351c}.urara-hero:before,.urara-hero:after{position:absolute;z-index:-1;right:-12%;width:70%;height:42%;border-radius:50% 0 0 50%;content:"";transform:rotate(-8deg)}.urara-hero:before{bottom:-16%;background:#701a3921}.urara-hero:after{right:-3%;bottom:-29%;background:#cf597a2e}.urara-kicker{margin:0;color:#a75e74;font-size:13px;font-weight:900;letter-spacing:.14em}.urara-hero h1{margin:5px 0 0;color:#741f3e;font-family:Georgia,serif;font-size:clamp(50px,10vw,88px);line-height:1;letter-spacing:.08em}.urara-name{margin:7px 0 0;color:#b85271;font-size:19px;font-weight:900;letter-spacing:.13em}.urara-subcopy{margin:22px 0 7px;color:#b3667c;font-size:13px;font-weight:900;letter-spacing:.18em}.urara-hero h2{margin:0 0 15px;color:#672c42;font-size:clamp(25px,5vw,36px);line-height:1.55}.urara-hero-copy>p:last-child{line-height:1.85}.urara-product-image-wrap{display:grid;place-items:center;min-width:0;padding:clamp(8px,2vw,18px)}.urara-product-image-wrap img{display:block;width:min(520px,100%);max-width:100%;height:auto;max-height:420px;border:0;background:transparent;box-shadow:none;object-fit:contain}.urara-dual-section{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:24px}.urara-dual-section article{min-width:0;padding:clamp(22px,5vw,36px);border-radius:22px;background:linear-gradient(145deg,#fff0f3,#f8dfe6)}.urara-dual-section article:last-child{background:linear-gradient(145deg,#f5ece7,#eadbd5)}.urara-dual-section article>p{margin:0;color:#b54f70;font-weight:950;letter-spacing:.14em}.urara-dual-section h2{margin:7px 0 15px;color:#722d46;font-size:clamp(22px,4.5vw,30px)}.urara-dual-section ul{margin:0;padding-left:1.2em;line-height:1.9}.urara-section{margin-top:24px;padding:clamp(22px,5vw,38px);border:1px solid #ead6d9;border-radius:22px;background:#fff;box-shadow:0 8px 24px #5828340d}.urara-section:after{display:block;width:96px;height:7px;margin-top:22px;border-radius:50%;background:linear-gradient(90deg,#76213f,#df849c,#e6c7b7);content:""}.urara-section h2{margin:0 0 15px;color:#792b48;font-size:clamp(23px,4.8vw,32px);line-height:1.55}.urara-section>p{margin:8px 0 0;line-height:1.85}.urara-ceramide-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,400px);align-items:center;gap:clamp(20px,4vw,36px);min-width:0}.urara-ceramide-layout>div{min-width:0}.urara-ceramide-layout p{margin:8px 0 0;line-height:1.85}.urara-ceramide-figure{min-width:0;margin:0;padding:10px;border-radius:16px;background:#fffaf9}.urara-ceramide-figure img{display:block;width:min(400px,100%);max-width:100%;height:auto;margin:0 auto;border:0;box-shadow:none;object-fit:contain}.urara-cartilage-diagram{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;width:min(560px,100%);margin:22px auto 0}.urara-cartilage-diagram strong{grid-column:1 / -1;padding:20px;border-radius:50%;background:#7d3150;color:#fff;font-size:22px;text-align:center}.urara-cartilage-diagram span{min-width:0;padding:12px;border-radius:999px;background:#f5e3e8;color:#733348;font-weight:800;text-align:center}.urara-comparison{background:#f9f0ec}.urara-concept{position:relative;overflow:hidden;margin-top:24px;padding:clamp(27px,6vw,46px);border-radius:24px;background:linear-gradient(135deg,#6e203f,#a94565 58%,#d78398);color:#fff;text-align:center}.urara-concept:after{position:absolute;right:-10%;bottom:-50%;width:70%;height:65%;border:18px solid rgba(255,255,255,.12);border-radius:50%;content:""}.urara-concept>p:first-child{margin:0;font-weight:900;letter-spacing:.15em}.urara-concept h2{margin:8px 0 17px;font-size:clamp(24px,5vw,34px)}.urara-concept p{position:relative;z-index:1;line-height:1.85}.urara-ingredient-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.urara-ingredient-grid article{min-width:0;padding:18px;border-radius:15px;background:#fbecf0}.urara-ingredient-grid h3{margin:0 0 8px;color:#7e2b49}.urara-ingredient-grid p{margin:0;line-height:1.7}.urara-recommend ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:0;padding:0;list-style:none}.urara-recommend li{min-width:0;padding:13px 15px;border-left:5px solid #b75372;border-radius:10px;background:#faedf1;font-weight:750}.urara-serving{text-align:center}.urara-serving strong{display:inline-block;margin-top:16px;padding:10px 18px;border-radius:999px;background:#792640;color:#fff;font-size:18px}.urara-consult{margin-top:24px;padding:clamp(24px,6vw,42px);border-radius:22px;background:linear-gradient(135deg,#6d1d3c,#9d3d5d 60%,#c8768b);color:#fff;text-align:center}.urara-consult h2{margin:0 0 14px;font-size:clamp(23px,5vw,32px)}.urara-consult p{line-height:1.8}.urara-consult a{display:inline-flex;min-height:48px;align-items:center;justify-content:center;margin-top:10px;padding:11px 22px;border-radius:999px;background:#fff;color:#7c2643;font-weight:900;text-decoration:none}@media(max-width:720px){.urara-hero,.urara-dual-section,.urara-ceramide-layout{grid-template-columns:minmax(0,1fr)}.urara-product-image-wrap{order:-1}.urara-product-image-wrap img{max-height:300px}.urara-ceramide-figure{width:min(100%,520px);margin-inline:auto;padding:6px}}@media(max-width:520px){.urara-shell{width:min(100% - 20px,1040px)}.urara-hero{padding:23px 17px;border-radius:20px}.urara-section{padding:20px 16px}.urara-ingredient-grid,.urara-recommend ul,.urara-cartilage-diagram{grid-template-columns:minmax(0,1fr)}.urara-cartilage-diagram strong{grid-column:auto}.urara-product-image-wrap{padding:2px}.urara-product-image-wrap img{max-height:230px}}.salacian-page{min-height:100vh;overflow-x:clip;background:#fcf8f2;color:#51443d}.salacian-shell{width:min(1060px,calc(100% - 28px));margin:0 auto;padding:22px 0 48px}.salacian-back{display:inline-flex;min-height:44px;align-items:center;margin-bottom:14px;color:#6e4637;font-weight:850;text-decoration:none}.salacian-hero{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.8fr);align-items:center;gap:clamp(22px,5vw,55px);overflow:hidden;padding:clamp(28px,6vw,60px);border-radius:28px;background:linear-gradient(145deg,#fffdf8 0 48%,#ead7c8);box-shadow:0 14px 36px #4e30231c}.salacian-hero:before,.salacian-hero:after{position:absolute;z-index:-1;top:-18%;width:23%;height:140%;border-radius:50%;content:"";transform:rotate(7deg)}.salacian-hero:before{right:17%;background:#653c2b1f}.salacian-hero:after{right:2%;background:#b86d7b26}.salacian-kicker{margin:0;color:#a7705a;font-size:13px;font-weight:900;letter-spacing:.14em}.salacian-hero h1{margin:5px 0 0;color:#513428;font-family:Georgia,serif;font-size:clamp(37px,7.5vw,68px);line-height:1.05;letter-spacing:.045em}.salacian-name{margin:8px 0 22px;color:#a35e6e;font-size:18px;font-weight:900;letter-spacing:.08em}.salacian-hero h2{margin:0 0 17px;color:#5c392f;font-size:clamp(25px,5vw,38px);line-height:1.5}.salacian-hero-copy>p:not(.salacian-kicker,.salacian-name){margin:8px 0 0;line-height:1.8}.salacian-product-image-wrap{display:grid;place-items:center;min-width:0;padding:8px}.salacian-product-image-wrap img{display:block;width:min(470px,100%);max-width:100%;height:auto;max-height:440px;border:0;background:transparent;box-shadow:none;object-fit:contain}.salacian-section{margin-top:24px;padding:clamp(22px,5vw,38px);border:1px solid #eadbcf;border-radius:22px;background:#fff;box-shadow:0 8px 24px #4b30240d}.salacian-section:before{display:block;width:72px;height:8px;margin-bottom:16px;border-radius:50%;background:linear-gradient(90deg,#543528,#b26e7d,#ddbea5);content:""}.salacian-section h2{margin:0 0 15px;color:#684234;font-size:clamp(23px,4.8vw,32px);line-height:1.55}.salacian-section>p{margin:8px 0 0;line-height:1.85}.salacian-blood-sugar{background:linear-gradient(110deg,#fff,#faf1e7)}.salacian-food-flow{display:grid;grid-template-columns:repeat(7,auto);align-items:center;justify-content:center;gap:9px;margin-top:20px}.salacian-food-flow span{padding:11px 13px;border-radius:999px;background:#efe0d2;color:#624538;font-weight:850;text-align:center}.salacian-food-flow b{color:#ae6977;font-size:25px}.salacian-tip-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.salacian-tip-grid article{min-width:0;padding:18px;border-top:5px solid #b67882;border-radius:13px;background:#faf1ee}.salacian-tip-grid p{margin:0;line-height:1.75}.salacian-plant-section{border-left:8px solid #887552}.salacian-center-message{margin-top:20px;padding:20px;border-radius:17px;background:linear-gradient(135deg,#f1e5d6,#f6e5e8);text-align:center}.salacian-center-message span{display:block;color:#8c6351;font-size:13px;font-weight:900}.salacian-center-message strong{display:block;margin:4px 0 8px;color:#664333;font-size:clamp(25px,5vw,36px)}.salacian-center-message p{margin:0;line-height:1.75}.salacian-ingredient-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.salacian-ingredient-grid article{min-width:0;padding:18px;border-radius:15px;background:#f7eee5}.salacian-ingredient-grid article:nth-child(2n){background:#f8eaed}.salacian-ingredient-grid h3{margin:0 0 8px;color:#6d493b;font-size:21px}.salacian-ingredient-grid p{margin:0;line-height:1.75}.salacian-fiber-section{background:#f9f4e9}.salacian-core-message{margin-top:24px;padding:clamp(27px,6vw,46px);border-radius:24px;background:linear-gradient(135deg,#4e3128,#775043 60%,#a96978);color:#fff;text-align:center}.salacian-core-message h2{margin:0 0 16px;font-size:clamp(26px,5.5vw,38px);line-height:1.55}.salacian-core-message p{margin:8px 0 0;line-height:1.85}.salacian-recommend ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:0;padding:0;list-style:none}.salacian-recommend li{min-width:0;padding:13px 15px;border-left:5px solid #ad6b78;border-radius:10px;background:#f8ecee;font-weight:750}.salacian-serving-note{margin-top:15px!important;padding:12px 14px;border-radius:10px;background:#f4eadf;font-weight:750}.salacian-stick-section{text-align:center}.salacian-stick-section>div{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:18px}.salacian-stick-section span{padding:8px 12px;border-radius:999px;background:#efe0d2;color:#634739;font-weight:850}.salacian-stick-section>strong{display:inline-block;margin-top:18px;padding:10px 19px;border-radius:999px;background:#5d3b30;color:#fff;font-size:20px}.salacian-consult{margin-top:24px;padding:clamp(24px,6vw,42px);border-radius:22px;background:linear-gradient(135deg,#4b3027,#755044 58%,#a66473);color:#fff;text-align:center}.salacian-consult h2{margin:0 0 14px;font-size:clamp(23px,5vw,32px)}.salacian-consult p{line-height:1.8}.salacian-consult a{display:inline-flex;min-height:48px;align-items:center;justify-content:center;margin-top:10px;padding:11px 22px;border-radius:999px;background:#fff;color:#654136;font-weight:900;text-decoration:none}@media(max-width:760px){.salacian-hero{grid-template-columns:minmax(0,1fr)}.salacian-product-image-wrap{order:-1}.salacian-product-image-wrap img{max-height:310px}.salacian-food-flow{grid-template-columns:minmax(0,1fr)}.salacian-food-flow b{text-align:center;transform:rotate(90deg)}}@media(max-width:520px){.salacian-shell{width:min(100% - 20px,1060px)}.salacian-hero{padding:23px 17px;border-radius:20px}.salacian-section{padding:20px 16px}.salacian-tip-grid,.salacian-ingredient-grid,.salacian-recommend ul{grid-template-columns:minmax(0,1fr)}.salacian-product-image-wrap img{max-height:240px}}.body-somacy-page{min-height:100vh;overflow-x:clip;background:#f4fbf9;color:#395450}.body-somacy-shell{width:min(1060px,calc(100% - 28px));margin:0 auto;padding:22px 0 48px}.body-somacy-back{display:inline-flex;min-height:44px;align-items:center;margin-bottom:14px;color:#26766c;font-weight:850;text-decoration:none}.body-somacy-hero{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.82fr);align-items:center;gap:clamp(22px,5vw,55px);overflow:hidden;padding:clamp(28px,6vw,60px);border-radius:28px;background:linear-gradient(145deg,#fff 0 48%,#dff5f0);box-shadow:0 14px 36px #1e6c611c}.body-somacy-hero:before,.body-somacy-hero:after{position:absolute;z-index:-1;border-radius:7px;background:#33a6971f;content:""}.body-somacy-hero:before{right:13%;bottom:-8%;width:48%;height:22%}.body-somacy-hero:after{right:27%;bottom:-28%;width:18%;height:72%}.body-somacy-kicker{margin:0;color:#6f9f86;font-size:13px;font-weight:900;letter-spacing:.14em}.body-somacy-hero h1{margin:5px 0 0;color:#238477;font-family:Georgia,serif;font-size:clamp(43px,8vw,76px);line-height:1}.body-somacy-name{margin:8px 0 22px;color:#4a9c91;font-size:18px;font-weight:900;letter-spacing:.08em}.body-somacy-hero h2{margin:0 0 17px;color:#24685f;font-size:clamp(25px,5vw,37px);line-height:1.5}.body-somacy-hero-copy>p:not(.body-somacy-kicker,.body-somacy-name){margin:8px 0 0;line-height:1.8}.body-somacy-image-wrap{display:grid;place-items:center;min-width:0;padding:8px}.body-somacy-image-wrap img{display:block;width:min(470px,100%);max-width:100%;height:auto;max-height:460px;border:0;background:transparent;box-shadow:none;object-fit:contain}.body-somacy-top-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:24px}.body-somacy-top-grid article{position:relative;min-width:0;padding:22px 18px;border-radius:18px;background:#fff;box-shadow:0 8px 22px #2671660f}.body-somacy-top-grid article>span{display:block;width:28px;height:28px;margin-bottom:12px;background:linear-gradient(90deg,transparent 35%,#69b9ae 35% 65%,transparent 65%),linear-gradient(transparent 35%,#69b9ae 35% 65%,transparent 65%)}.body-somacy-top-grid h2{margin:0 0 9px;color:#24796e;font-size:20px}.body-somacy-top-grid p{margin:0;line-height:1.75}.body-somacy-section{margin-top:24px;padding:clamp(22px,5vw,38px);border:1px solid #cee9e4;border-radius:22px;background:#fff;box-shadow:0 8px 24px #246a600d}.body-somacy-section h2{margin:0 0 15px;color:#277b70;font-size:clamp(23px,4.8vw,32px);line-height:1.55}.body-somacy-section>p{margin:8px 0 0;line-height:1.85}.body-somacy-about{border-left:8px solid #64b8ac;background:linear-gradient(110deg,#fff,#eaf8f5)}.body-somacy-daily-grid,.body-somacy-oil-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.body-somacy-daily-grid article{min-width:0;padding:18px;border-top:5px solid #6bb9ae;border-radius:13px;background:#edf8f6}.body-somacy-daily-grid p{margin:0;line-height:1.75}.body-somacy-oil-grid article{min-width:0;padding:18px;border-radius:15px;background:linear-gradient(145deg,#f4fbf8,#e3f3ed)}.body-somacy-oil-grid h3{margin:0 0 8px;color:#27766d}.body-somacy-oil-grid p{margin:0;line-height:1.75}.body-somacy-moisture{background:#eef9f7}.body-somacy-moisture h3{color:#4b9182}.body-somacy-equation{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1.3fr);align-items:center;gap:10px;margin-top:20px}.body-somacy-equation strong,.body-somacy-equation span{min-width:0;padding:15px 11px;border-radius:13px;background:#fff;color:#26766c;text-align:center}.body-somacy-equation span{background:#31998b;color:#fff;font-weight:900}.body-somacy-equation b{color:#b89752;font-size:24px;text-align:center}.body-somacy-whole-body{text-align:center}.body-somacy-product-facts{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:18px}.body-somacy-product-facts span{padding:9px 14px;border-radius:999px;background:#dff2ee;color:#286f66;font-weight:850}.body-somacy-massage{border-left:8px solid #d1b56b}.body-somacy-recommend ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:0;padding:0;list-style:none}.body-somacy-recommend li{min-width:0;padding:13px 15px;border-left:5px solid #68b4a9;border-radius:10px;background:#eaf7f4;font-weight:750}.body-somacy-usage{text-align:center}.body-somacy-usage strong{display:inline-block;margin-top:17px;padding:10px 20px;border-radius:999px;background:#278578;color:#fff;font-size:22px}.body-somacy-consult{margin-top:24px;padding:clamp(24px,6vw,42px);border-radius:22px;background:linear-gradient(135deg,#216f66,#31998b 58%,#7ec2b6);color:#fff;text-align:center}.body-somacy-consult h2{margin:0 0 14px;font-size:clamp(23px,5vw,32px)}.body-somacy-consult p{line-height:1.8}.body-somacy-consult a{display:inline-flex;min-height:48px;align-items:center;justify-content:center;margin-top:10px;padding:11px 22px;border-radius:999px;background:#fff;color:#26776c;font-weight:900;text-decoration:none}@media(max-width:760px){.body-somacy-hero{grid-template-columns:minmax(0,1fr)}.body-somacy-image-wrap{order:-1}.body-somacy-image-wrap img{max-height:320px}.body-somacy-equation{grid-template-columns:minmax(0,1fr)}}@media(max-width:520px){.body-somacy-shell{width:min(100% - 20px,1060px)}.body-somacy-hero{padding:23px 17px;border-radius:20px}.body-somacy-section{padding:20px 16px}.body-somacy-top-grid,.body-somacy-daily-grid,.body-somacy-oil-grid,.body-somacy-recommend ul{grid-template-columns:minmax(0,1fr)}.body-somacy-image-wrap img{max-height:250px}}.reborn-page{min-height:100vh;overflow-x:clip;background:#fbfbf7;color:#44483f}.reborn-shell{width:min(1040px,calc(100% - 28px));margin:0 auto;padding:22px 0 48px}.reborn-back{display:inline-flex;min-height:44px;align-items:center;margin-bottom:14px;color:#687224;font-weight:850;text-decoration:none}.reborn-hero{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.82fr);align-items:center;gap:clamp(22px,5vw,54px);overflow:hidden;padding:clamp(28px,6vw,60px);border-radius:28px;background:linear-gradient(145deg,#fff 0 50%,#f7f3d5);box-shadow:0 14px 36px #4e51241a}.reborn-hero:before{position:absolute;z-index:-1;right:-15%;bottom:-58%;width:78%;aspect-ratio:1;border:clamp(30px,7vw,76px) solid rgba(245,207,21,.38);border-radius:50%;content:""}.reborn-hero:after{position:absolute;z-index:-1;right:5%;bottom:-28%;width:58%;height:10px;border-radius:50%;background:#b6c63a;content:"";transform:rotate(-12deg)}.reborn-kicker{margin:0;color:#8c962c;font-size:13px;font-weight:900;letter-spacing:.14em}.reborn-hero h1{margin:5px 0 0;color:#464a3f;font-family:Georgia,serif;font-size:clamp(45px,9vw,78px);line-height:1;letter-spacing:.06em}.reborn-name{margin:8px 0 22px;color:#9d8d15;font-size:18px;font-weight:900;letter-spacing:.1em}.reborn-hero h2{margin:0 0 17px;color:#4c513d;font-size:clamp(25px,5vw,37px);line-height:1.5}.reborn-hero-copy>p:not(.reborn-kicker,.reborn-name){margin:8px 0 0;line-height:1.8}.reborn-image-wrap{display:grid;place-items:center;min-width:0;padding:8px}.reborn-image-wrap img{display:block;width:min(470px,100%);max-width:100%;height:auto;max-height:450px;border:0;background:transparent;box-shadow:none;object-fit:contain}.reborn-section{margin-top:24px;padding:clamp(22px,5vw,38px);border:1px solid #e5e2c9;border-radius:22px;background:#fff;box-shadow:0 8px 24px #4549270d}.reborn-section:before{display:block;width:86px;height:8px;margin-bottom:15px;border-radius:50%;background:linear-gradient(90deg,#f2d224,#bfd13c);content:""}.reborn-section h2{margin:0 0 15px;color:#53583d;font-size:clamp(23px,4.8vw,32px);line-height:1.55}.reborn-section>p{margin:8px 0 0;line-height:1.85}.reborn-change{background:linear-gradient(110deg,#fff,#faf6d9)}.reborn-aglycone{background:#fbfae9}.reborn-type-flow{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:12px;margin-top:20px}.reborn-type-flow article{display:grid;gap:5px;min-width:0;padding:18px;border-radius:15px;background:#fff;text-align:center}.reborn-type-flow strong{color:#72791e;font-size:20px}.reborn-type-flow b{color:#d0aa00;font-size:25px;transform:rotate(-90deg)}.reborn-note{margin-top:14px!important;text-align:center;font-weight:800}.reborn-estrogen-figure{width:min(680px,100%);margin:22px auto 0;padding:clamp(8px,2vw,14px);border-radius:16px;background:#fff}.reborn-estrogen-figure img{display:block;width:100%;max-width:100%;height:auto;margin:0 auto;border:0;box-shadow:none;object-fit:contain}.reborn-estrogen-figure figcaption{margin-top:10px;color:#656450;font-size:12px;line-height:1.7}.reborn-hihatsu-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(200px,270px);align-items:center;gap:clamp(18px,4vw,30px);min-width:0}.reborn-hihatsu-layout>div{min-width:0}.reborn-hihatsu-layout p{margin:8px 0 0;line-height:1.85}.reborn-hihatsu-layout img{display:block;width:min(270px,100%);max-width:100%;height:auto;max-height:280px;margin:0 auto;border:0;background:transparent;box-shadow:none;object-fit:contain}.reborn-hihatsu-lead{margin:0 0 15px!important;color:#72791e;font-size:clamp(17px,4vw,21px);font-weight:900}.reborn-equol-flow{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:9px;margin:20px 0}.reborn-equol-flow strong{padding:11px 15px;border-radius:999px;background:#f5efbd;color:#5d6228}.reborn-equol-flow b{color:#b2c135;font-size:23px;transform:rotate(-90deg)}.reborn-gut{border-left:8px solid #b8c63d}.reborn-main-pair{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:14px;margin-top:24px;padding:clamp(25px,6vw,44px);border-radius:24px;background:linear-gradient(135deg,#f8d829,#f2eb9b);text-align:center}.reborn-main-pair div{display:grid;gap:5px;min-width:0;padding:18px;border-radius:50%;background:#fff;color:#555a31}.reborn-main-pair div>span{font-size:13px}.reborn-main-pair div>strong{font-size:clamp(19px,4vw,26px)}.reborn-main-pair>b{font-size:30px}.reborn-main-pair>p{grid-column:1 / -1;margin:8px 0 0;font-size:19px;font-weight:900;line-height:1.7}.reborn-recommend ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:0;padding:0;list-style:none}.reborn-recommend li{min-width:0;padding:13px 15px;border-left:5px solid #d9bd1e;border-radius:10px;background:#fbf7d8;font-weight:750}.reborn-serving{text-align:center}.reborn-serving>div{display:flex;flex-wrap:wrap;justify-content:center;gap:9px;margin-top:17px}.reborn-serving strong{padding:10px 18px;border-radius:999px;background:#686e2c;color:#fff;font-size:18px}.reborn-consult{margin-top:24px;padding:clamp(24px,6vw,42px);border-radius:22px;background:linear-gradient(135deg,#45493a,#6b713d 58%,#a6b234);color:#fff;text-align:center}.reborn-consult h2{margin:0 0 14px;font-size:clamp(23px,5vw,32px)}.reborn-consult p{line-height:1.8}.reborn-consult a{display:inline-flex;min-height:48px;align-items:center;justify-content:center;margin-top:10px;padding:11px 22px;border-radius:999px;background:#fff;color:#5e6428;font-weight:900;text-decoration:none}@media(max-width:760px){.reborn-hero,.reborn-hihatsu-layout{grid-template-columns:minmax(0,1fr)}.reborn-image-wrap{order:-1}.reborn-image-wrap img{max-height:320px}.reborn-type-flow{grid-template-columns:minmax(0,1fr)}.reborn-type-flow b{transform:none}.reborn-main-pair{grid-template-columns:minmax(0,1fr)}.reborn-main-pair>p{grid-column:auto}.reborn-hihatsu-layout img{width:min(220px,100%);max-height:230px}}@media(max-width:520px){.reborn-shell{width:min(100% - 20px,1040px)}.reborn-hero{padding:23px 17px;border-radius:20px}.reborn-section{padding:20px 16px}.reborn-recommend ul{grid-template-columns:minmax(0,1fr)}.reborn-image-wrap img{max-height:245px}}.patient-service-card{min-width:0;padding:18px;border:1px solid #d4e1da;border-radius:14px;background:#fff}.patient-service-card-featured{border-color:#9fc6af;background:#fbfefc}.patient-service-card h3,.patient-services-addon-card h3{margin:0 0 8px;color:#245c43;font-size:18px}.patient-service-card p{margin:7px 0 0;color:#52615a;font-size:14px;line-height:1.7;overflow-wrap:anywhere}.patient-service-price{color:#183f2e!important;font-size:22px!important;font-weight:900;font-variant-numeric:tabular-nums}.patient-services-choice{padding:18px;border:1px solid #d4e1da;border-radius:14px;background:#fff}.patient-services-choice-list{display:grid;gap:0;margin:0}.patient-services-choice-list>div{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 0;border-top:1px solid #e2eae5}.patient-services-choice-list>div:first-child{border-top:0}.patient-services-choice-list dt{min-width:0;color:#52615a;font-size:13px;line-height:1.55;overflow-wrap:anywhere}.patient-services-choice-list dd{margin:0;padding:5px 9px;border-radius:999px;background:#e8f3ec;color:#245c43;font-size:13px;font-weight:900;white-space:nowrap}.patient-services-guidance{margin:12px 0 0;padding-top:12px;border-top:1px solid #e2eae5;color:#46594f;font-size:13px;line-height:1.7}.patient-services-composition{display:grid;grid-template-columns:minmax(0,1fr);gap:9px;margin:0 0 24px;text-align:center}.patient-services-composition-block{min-width:0;padding:13px 16px;border:1px solid #bdd5c6;border-radius:12px;background:#f8fcf9}.patient-services-composition-block span{color:#39765a;font-size:12px;font-weight:900}.patient-services-composition-block p{margin:4px 0 0;color:#263d32;font-size:14px;font-weight:750;overflow-wrap:anywhere}.patient-services-plus{color:#39765a;font-size:25px;font-weight:900;line-height:1}.patient-services-addon-list{display:grid;gap:10px}.patient-services-addon-card{display:grid;grid-template-columns:108px minmax(0,1fr) auto;align-items:center;gap:14px;min-width:0;padding:16px 18px;border:1px solid #d4e1da;border-radius:13px;background:#fff}.patient-services-addon-card h3{margin-bottom:4px;font-size:16px}.patient-services-addon-card p{margin:0;color:#52615a;font-size:13px;line-height:1.55;overflow-wrap:anywhere}.patient-services-addon-card .patient-service-summary{margin-bottom:4px;color:#315e47;font-weight:800}.patient-services-addon-card strong{color:#183f2e;font-size:19px;font-variant-numeric:tabular-nums;white-space:nowrap}.patient-prices-special-list .patient-services-addon-card{grid-template-columns:minmax(0,1fr) auto}.patient-services-image-frame{width:100%;min-width:0;margin:0 0 13px;overflow:hidden;border:1px solid #d1dfd7;border-radius:12px;background:#edf4ef;aspect-ratio:16 / 7}.patient-services-image-frame-insurance{width:clamp(130px,36vw,160px);max-width:100%;margin:14px auto 16px;border:0;outline:0;border-radius:0;background:transparent;box-shadow:none;aspect-ratio:1}.patient-services-image-frame-insurance img{object-fit:contain}.patient-services-image-frame-full-course{width:min(100%,310px);max-width:100%;margin:14px auto 16px;border:0;outline:0;border-radius:0;background:transparent;box-shadow:none;aspect-ratio:auto}.patient-services-image-frame-full-course img{width:100%;height:auto;object-fit:contain}.patient-services-addon-card .patient-services-image-frame{margin:0;aspect-ratio:4 / 3}.patient-services-image-frame img,.patient-services-image-placeholder{display:block;width:100%;height:100%}.patient-services-image-frame img{object-fit:cover}.patient-services-image-placeholder{display:grid;place-items:center;padding:10px;background:linear-gradient(145deg,#e3f0e7,#f8fbf9);color:#527060;font-size:12px;font-weight:850;text-align:center}.patient-services-special-intro{margin:0 0 12px;color:#52615a;font-size:14px;line-height:1.7}.patient-services-special-section{margin-top:22px;padding-top:18px;border-top:1px solid #dbe7e0}.patient-services-special-heading-featured{text-align:center}.patient-services-included-note{margin:14px 0 0;padding:14px;border-radius:10px;background:#e9f5ed;color:#315e47;font-size:14px;line-height:1.7}.patient-services-final{margin-top:22px;padding:18px;border:2px solid #8db89f;border-radius:14px;background:#f8fcf9}.patient-services-final dl{margin:0}.patient-services-final dl>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:9px 0;border-top:1px solid #dbe7e0}.patient-services-final dl>div:first-child{border-top:0}.patient-services-final dl>.patient-services-selected-menus-row{grid-template-columns:max-content minmax(0,1fr)}.patient-services-selected-menus-row dd{width:100%;max-width:100%}.patient-services-final dt{color:#52615a;font-size:13px}.patient-services-final dd{max-width:62%;min-width:0;margin:0;color:#263d32;font-size:13px;font-weight:850;text-align:right}.patient-services-course-name,.patient-services-final-amount{display:inline-block;white-space:nowrap;word-break:keep-all;overflow-wrap:normal}.patient-services-menu-name-list{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:5px 7px;width:max-content;max-width:100%;min-width:0}.patient-services-menu-name{display:inline-block;padding:3px 7px;border-radius:999px;background:#e8f3ec;white-space:nowrap;word-break:keep-all;overflow-wrap:normal}.patient-services-final-value-stack{display:inline-flex;flex-direction:column;align-items:flex-end;gap:2px}.patient-services-final-value-stack small{color:#607068;font-size:11px;font-weight:750;white-space:nowrap}.patient-services-total{display:flex;align-items:baseline;justify-content:flex-end;gap:10px;margin:14px 0 0;padding-top:14px;border-top:2px solid #bdd5c6;color:#245c43;font-size:16px;font-weight:850;text-align:right}.patient-services-total strong{font-size:26px;font-variant-numeric:tabular-nums}.patient-services-price-list{scroll-margin-top:16px}.patient-services-price-note{margin:-5px 0 13px;color:#52615a;font-size:13px;line-height:1.65}.patient-services-price-principle{margin:0 0 14px;padding:13px 15px;border-left:4px solid #65a27f;background:#eef7f1;color:#315e47;font-size:14px;font-weight:850;line-height:1.7}.patient-services-extension-note{margin:-4px 0 14px;color:#3f5b4c;font-size:14px;font-weight:800;line-height:1.65}.patient-price-course-card{display:flex;flex-direction:column}.patient-price-booking-action{margin-top:auto;padding-top:18px}.patient-price-booking-link{display:inline-flex;align-items:center;justify-content:center;width:100%;min-height:44px;padding:10px 14px;border-radius:9px;background:#2f7552;color:#fff;font-weight:850;text-align:center;text-decoration:none}.patient-price-insurance-external-link{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;line-height:1.45}.patient-price-insurance-external-link small{font-size:12px}.patient-price-booking-label{margin:0 0 7px!important;color:#315e47!important;font-size:13px!important;font-weight:850}.patient-price-duration-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.patient-price-duration-links a{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:4px;min-width:0;min-height:44px;padding:8px;border-radius:8px;background:#2f7552;color:#fff;font-weight:850;text-decoration:none}.patient-price-duration-links small{font-size:11px}.patient-services-primary-action small{display:block;margin-top:4px;font-size:12px;font-weight:700}.patient-price-course-recommended{border-color:#a8c985;background:#f6f8df;box-shadow:0 0 0 2px #7ea45324;scroll-margin-top:24px}.patient-price-recommendation-badge{align-self:flex-start;max-width:100%;margin:0 0 10px!important;padding:5px 10px;border-radius:999px;background:#dfeec4;color:#426126!important;font-size:13px!important;font-weight:900;line-height:1.45!important;overflow-wrap:anywhere}.patient-price-card-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;min-width:0;margin:0 0 10px}.patient-price-card-heading h3{min-width:0;margin:0;overflow-wrap:anywhere}.patient-price-card-heading img{display:block;flex-shrink:0;width:clamp(72px,21vw,108px);max-width:108px;height:100px;max-height:100px;border:0;outline:0;background:transparent;box-shadow:none;object-fit:contain}.patient-price-extension-banner{display:grid;grid-template-columns:minmax(0,1fr) minmax(120px,190px);align-items:center;gap:18px;margin:16px 0 14px;padding:16px 18px;border-left:5px solid #d79a2b;border-radius:12px;background:#fff5dc;color:#755016;font-size:17px;font-weight:900;line-height:1.7}.patient-price-extension-banner p{margin:0}.patient-price-extension-banner img{display:block;width:100%;max-width:190px;height:110px;margin:0 auto;border:0;outline:0;background:transparent;box-shadow:none;object-fit:contain}.patient-price-special-section>h2{text-align:center}.patient-price-special-lead{margin:0 0 10px;color:#52615a;font-size:14px;line-height:1.7;text-align:center}.patient-price-special-highlight{margin:0 0 15px;padding:13px 15px;border-radius:10px;background:#e8f3ec;color:#315e47;font-size:15px;font-weight:850;line-height:1.75}.patient-prices-special-list .patient-price-special-card{display:flex;align-items:stretch;flex-direction:column;gap:4px}.patient-price-special-card>strong{align-self:flex-start;margin:0 0 4px}.patient-price-special-card>p{margin:0;color:#52615a;font-size:13px;line-height:1.65;overflow-wrap:anywhere}.patient-services-addon-heading{margin:20px 0 10px;color:#245c43;font-size:17px}.patient-services-consult{padding:20px;border-radius:14px;background:#dfeee5}.patient-services-consult h2{font-size:18px}.patient-services-consult p{margin:0;color:#40564a;font-size:14px;line-height:1.75}.patient-services-consult .patient-services-line-note{margin-top:12px;padding-top:12px;border-top:1px solid #bcd3c5}.patient-services-consult .patient-services-no-booking{margin-top:10px;color:#596a61;font-size:12px;font-weight:800}@media(min-width:760px){.patient-services-page{padding-top:34px;padding-bottom:50px}.patient-services-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.patient-services-guide-grid,.patient-services-subchoices{grid-template-columns:repeat(2,minmax(0,1fr))}.patient-services-entry-image{width:82px;max-width:82px;height:92px;max-height:92px}.patient-services-course-choice-image{width:90px;max-width:90px;height:98px;max-height:98px}.patient-services-course-choice-image-wide{width:95px;max-width:95px}.patient-services-health-choice img{width:90px;max-width:90px;height:90px;max-height:90px}.patient-services-composition{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center}}@media(min-width:520px){.patient-services-health-grid,.patient-services-health-products{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:479px){.patient-services-hero,.patient-services-guide{padding:18px 15px}.patient-services-addon-card{grid-template-columns:minmax(0,1fr);gap:8px}.patient-services-addon-card .patient-services-image-frame{max-height:150px}.patient-services-addon-card strong{justify-self:start}.patient-services-result-actions{align-items:stretch;flex-direction:column}.patient-services-result-actions a,.patient-services-action-link,.patient-services-price-jump{width:100%;max-width:100%}.patient-services-result-actions .patient-services-reset,.patient-services-primary-action{width:100%}.patient-services-balance-intro{grid-template-columns:minmax(0,1fr);gap:10px;padding:15px;text-align:left}.patient-services-balance-intro img{max-width:180px;height:112px}.patient-price-extension-banner{grid-template-columns:minmax(0,1fr);gap:10px;padding:15px;font-size:16px;text-align:center}.patient-price-extension-banner img{max-width:180px}.patient-price-card-heading{gap:8px}.patient-price-card-heading img{width:clamp(68px,23vw,88px);max-width:88px;height:84px;max-height:84px}.patient-services-health-consult .patient-services-action-link{width:100%;max-width:100%}.patient-services-final{padding:15px 13px}.patient-services-final dl>div{grid-template-columns:minmax(0,1fr);gap:4px}.patient-services-final dl>.patient-services-selected-menus-row{grid-template-columns:minmax(0,1fr)}.patient-services-final dd{max-width:100%;text-align:left}.patient-services-menu-name-list{justify-content:flex-start}.patient-services-final-value-stack{align-items:flex-start}.patient-services-total{align-items:flex-end;flex-direction:column;gap:2px}}.mm-product-page{width:100%;min-width:0;max-width:100%;min-height:100vh;min-height:100dvh;padding:max(20px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(40px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));overflow-x:hidden;background:#f7f2e8;color:#1f2b49}.mm-product-shell{width:min(900px,100%);min-width:0;max-width:100%;margin:0 auto}.mm-product-back{display:inline-flex;align-items:center;min-height:44px;margin:0 0 12px;color:#8c4b20;font-size:14px;font-weight:850}.mm-product-hero,.mm-product-section,.mm-product-consult{position:relative;min-width:0;margin:0 0 18px;padding:clamp(20px,5vw,34px);overflow:hidden;border:1px solid #ecd8bf;border-radius:18px;background:#fffdf8;box-shadow:0 8px 24px #4e30140f}.mm-product-hero{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(220px,.75fr);align-items:center;gap:clamp(20px,5vw,42px);border-top:7px solid #e8752f}.mm-product-hero:before,.mm-product-hero:after{position:absolute;z-index:0;width:150px;height:132px;background:#e6752f0f;clip-path:polygon(25% 6.7%,75% 6.7%,100% 50%,75% 93.3%,25% 93.3%,0 50%);content:"";pointer-events:none}.mm-product-hero:before{top:-50px;right:22%}.mm-product-hero:after{right:-55px;bottom:-45px}.mm-product-hero-copy,.mm-product-hero-image{position:relative;z-index:1;min-width:0}.mm-product-brand{margin:0 0 3px;color:#e65f25;font-size:14px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.mm-product-hero h1{margin:0;color:#172343;font-size:clamp(48px,10vw,78px);line-height:1;letter-spacing:.03em}.mm-product-hero h2{margin:18px 0 8px;color:#172343;font-size:clamp(21px,4.8vw,29px);line-height:1.4}.mm-product-hero-copy>p:last-child,.mm-product-section>p,.mm-product-lps-feature p,.mm-product-primary-ingredient p,.mm-product-ingredient-grid p,.mm-product-sweet-grid p,.mm-product-consult p{color:#4e5669;font-size:15px;line-height:1.8;overflow-wrap:anywhere}.mm-product-lps-badge{display:inline-flex;margin:12px 0 0;padding:7px 12px;border-radius:999px;background:#fbe2d2;color:#b74320;font-size:14px;font-weight:900}.mm-product-hero-image{display:block;width:min(390px,100%);max-width:100%;height:auto;max-height:390px;margin:0 auto;border:0;background:transparent;box-shadow:none;object-fit:contain}.mm-product-section h2,.mm-product-consult h2{margin:0 0 14px;color:#172343;font-size:clamp(21px,5vw,27px);line-height:1.45}.mm-product-section h3{margin:0 0 7px;color:#a74621;font-size:17px}.mm-product-section-label{display:inline-flex;margin:0 0 10px;padding:5px 10px;border-radius:999px;background:#f5e4cf;color:#7f4726!important;font-size:12px!important;font-weight:900;letter-spacing:.04em;line-height:1.4!important}.mm-product-section-heading{display:flex;align-items:center;gap:13px;min-width:0}.mm-product-section-heading h2{min-width:0}.mm-product-hex,.mm-product-hex-small{display:grid;flex-shrink:0;place-items:center;background:linear-gradient(145deg,#f08a3c,#d85324);color:#fff;font-weight:950;clip-path:polygon(25% 6.7%,75% 6.7%,100% 50%,75% 93.3%,25% 93.3%,0 50%)}.mm-product-hex{width:124px;height:110px;font-size:28px}.mm-product-hex-small{width:65px;height:58px;font-size:15px}.mm-product-lps-feature,.mm-product-primary-ingredient{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:20px;margin-top:15px;padding:18px;border-radius:14px;background:#fff4e7}.mm-product-primary-ingredient p{margin:0}.mm-product-ingredient-grid,.mm-product-sweet-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;margin-top:16px}.mm-product-ingredient-grid article,.mm-product-sweet-grid article{min-width:0;padding:16px;border:1px solid #ead6c0;border-radius:13px;background:#fffaf2}.mm-product-ingredient-grid p,.mm-product-sweet-grid p{margin:0;font-size:13px}.mm-product-gut-section{border-left:6px solid #22365e}.mm-product-sweet-section{border-top:5px solid #e69138}.mm-product-sweet-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.mm-product-howto strong{display:inline-block;margin-top:10px;padding:9px 13px;border-radius:8px;background:#f8e8d3;color:#8f461f;font-size:16px}.mm-product-consult{border:2px solid #e77a35;background:#fff7eb;text-align:center}.mm-product-consult a{display:inline-flex;align-items:center;justify-content:center;min-height:48px;margin-top:10px;padding:11px 24px;border-radius:10px;background:#1f8f5f;color:#fff;font-size:16px;font-weight:900;text-decoration:none}@media(max-width:679px){.mm-product-hero{grid-template-columns:minmax(0,1fr)}.mm-product-hero-image{width:min(360px,100%);max-height:360px}.mm-product-lps-feature,.mm-product-primary-ingredient{grid-template-columns:minmax(0,1fr);justify-items:center;text-align:center}.mm-product-ingredient-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.mm-product-sweet-grid{grid-template-columns:minmax(0,1fr)}}@media(max-width:419px){.mm-product-hero,.mm-product-section,.mm-product-consult{padding:18px 15px}.mm-product-section-heading{align-items:flex-start}.mm-product-hex-small{width:54px;height:48px}.mm-product-ingredient-grid{grid-template-columns:minmax(0,1fr)}}.happy-wave-page{width:100%;min-width:0;max-width:100%;min-height:100vh;min-height:100dvh;padding:max(20px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(40px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));overflow-x:hidden;background:#fff8f8;color:#29272b}.happy-wave-shell{width:min(940px,100%);min-width:0;max-width:100%;margin:0 auto}.happy-wave-back{display:inline-flex;align-items:center;min-height:44px;margin-bottom:12px;color:#8f1420;font-size:14px;font-weight:850}.happy-wave-hero,.happy-wave-section,.happy-wave-challenge,.happy-wave-consult{position:relative;min-width:0;margin-bottom:18px;padding:clamp(20px,5vw,36px);overflow:hidden;border:1px solid #f0ced2;border-radius:20px;background:#fff;box-shadow:0 9px 25px #650d1912}.happy-wave-hero{display:grid;grid-template-columns:minmax(0,.85fr) minmax(300px,1.15fr);align-items:center;gap:clamp(16px,4vw,36px);border-top:7px solid #c81024}.happy-wave-hero:before,.happy-wave-section:before,.happy-wave-consult:before{position:absolute;z-index:0;right:-90px;bottom:-100px;width:390px;height:180px;border-radius:50% 20% 0 50%;background:linear-gradient(135deg,#c2061f21,#ff85970a);transform:rotate(-12deg);content:"";pointer-events:none}.happy-wave-hero-copy,.happy-wave-product-image,.happy-wave-section>*,.happy-wave-consult>*{position:relative;z-index:1}.happy-wave-kicker{margin:0 0 3px;color:#a20e20;font-size:14px;font-weight:900;letter-spacing:.16em}.happy-wave-hero h1{margin:0;color:#980f1d;font-size:clamp(40px,8vw,70px);line-height:1;letter-spacing:.04em}.happy-wave-japanese-name{margin:7px 0 18px;color:#bf1a2d;font-size:17px;font-weight:900;letter-spacing:.08em}.happy-wave-hero h2,.happy-wave-section h2,.happy-wave-challenge h2,.happy-wave-consult h2{margin:0 0 14px;color:#29272b;font-size:clamp(21px,4.8vw,28px);line-height:1.5}.happy-wave-hero h2:after,.happy-wave-section h2:after{display:block;width:68px;height:4px;margin-top:11px;border-radius:999px;background:linear-gradient(90deg,#bc1023,#ff7184);content:""}.happy-wave-hero p,.happy-wave-section p,.happy-wave-challenge p,.happy-wave-consult p,.happy-wave-section li{color:#525057;font-size:15px;line-height:1.85;overflow-wrap:anywhere}.happy-wave-volume{display:inline-flex;margin-top:8px;padding:8px 12px;border-radius:999px;background:#fbe9eb;color:#9d1423;font-size:15px}.happy-wave-product-image{display:block;width:min(520px,100%);max-width:100%;height:auto;max-height:430px;margin:0 auto;border:0;background:transparent;box-shadow:none;object-fit:contain}.happy-wave-eyebrow{margin:0 0 7px!important;color:#b11225!important;font-size:13px!important;font-weight:900;letter-spacing:.05em}.happy-wave-nutrient-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;margin-top:18px}.happy-wave-nutrient-grid article,.happy-wave-bcaa-grid article{display:grid;min-width:0;min-height:74px;place-items:center;padding:12px 8px;border-left:5px solid #c71025;border-radius:12px;background:linear-gradient(145deg,#fff,#fff0f2);color:#851321;text-align:center}.happy-wave-protein-grid,.happy-wave-support-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin-top:16px}.happy-wave-support-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.happy-wave-protein-grid article,.happy-wave-support-grid article{min-width:0;padding:18px;border:1px solid #efc8cd;border-radius:14px;background:#fff8f9}.happy-wave-protein-grid h3,.happy-wave-support-grid h3{margin:0 0 8px;color:#a60f22;font-size:18px}.happy-wave-protein-grid p,.happy-wave-support-grid p{margin:0;font-size:14px}.happy-wave-bcaa-section{border-left:6px solid #a70d20}.happy-wave-bcaa-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:17px}.happy-wave-body-section{background:linear-gradient(140deg,#fff,#fff0f2)}.happy-wave-research-section{border-top:5px solid #454148}.happy-wave-challenge{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;background:linear-gradient(135deg,#88101e,#d51c35);color:#fff}.happy-wave-challenge h2,.happy-wave-challenge p,.happy-wave-challenge .happy-wave-eyebrow{color:#fff!important}.happy-wave-challenge a,.happy-wave-consult a{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:11px 20px;border-radius:11px;font-weight:900;text-align:center;text-decoration:none}.happy-wave-challenge a{background:#fff;color:#a20d20}.happy-wave-recommend-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:0;padding:0;list-style:none}.happy-wave-recommend-list li{min-width:0;padding:12px 14px 12px 36px;border-radius:10px;background:#fff4f5}.happy-wave-recommend-list li:before{margin-left:-22px;margin-right:8px;color:#c41227;content:"✓";font-weight:950}.happy-wave-consult{border:2px solid #c7162b;background:#fff2f3;text-align:center}.happy-wave-consult a{margin-top:8px;background:#1f8f5f;color:#fff}@media(max-width:679px){.happy-wave-hero{grid-template-columns:minmax(0,1fr)}.happy-wave-product-image{width:min(520px,100%);max-height:340px}.happy-wave-nutrient-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.happy-wave-protein-grid,.happy-wave-support-grid,.happy-wave-challenge{grid-template-columns:minmax(0,1fr)}.happy-wave-challenge a{width:100%}.happy-wave-recommend-list{grid-template-columns:minmax(0,1fr)}}@media(max-width:419px){.happy-wave-hero,.happy-wave-section,.happy-wave-challenge,.happy-wave-consult{padding:18px 15px}.happy-wave-bcaa-grid,.happy-wave-nutrient-grid{grid-template-columns:minmax(0,1fr)}.happy-wave-product-image{max-height:280px}}.claim-exclusion-month-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 20px}.claim-exclusion-month-tab{padding:8px 14px;border:1px solid #b9c7bf;border-radius:999px;background:#fff;color:#39483f;font-weight:750;text-decoration:none}.claim-exclusion-month-tab.selected{border-color:#216749;background:#216749;color:#fff}.claim-exclusion-month-picker{display:flex;gap:6px;align-items:center}.claim-exclusion-section-title{margin:0 0 10px;color:#17221d;font-size:16px;font-weight:800}.claim-exclusion-register-section{margin:0 0 28px;padding:16px;border:1px solid #b9c7bf;border-radius:12px;background:#f7fbf8}.claim-exclusion-search-row{display:flex;gap:8px;margin:0 0 10px}.claim-exclusion-patient-number-input{flex:1;min-height:44px;padding:0 12px;border:1px solid #b9c7bf;border-radius:8px;font-size:16px}.claim-exclusion-found-patient{padding:12px 14px;border:1px solid #35795a;border-radius:10px;background:#eaf6ee}.claim-exclusion-found-patient-number{margin:0 0 2px;color:#17221d;font-weight:800}.claim-exclusion-found-patient-name{margin:0 0 10px;color:#17221d;font-size:20px;font-weight:900}.claim-exclusion-table{width:100%;border-collapse:collapse}.claim-exclusion-table th,.claim-exclusion-table td{padding:8px 10px;border-bottom:1px solid #e1e8e3;text-align:left}.claim-exclusion-empty{color:#7a8780}.reminder-settings-description{margin:0 0 20px;color:#56665e;font-size:13px;line-height:1.7}.reminder-settings-form{max-width:560px;padding:16px;border:1px solid #b9c7bf;border-radius:12px;background:#f7fbf8}.reminder-settings-lead-minutes-label{display:flex;align-items:center;gap:6px;margin:0 0 18px;color:#17221d;font-size:15px;font-weight:800}.reminder-settings-lead-minutes-input{width:72px;padding:8px 10px;border:1px solid #b9c7bf;border-radius:8px;font-size:15px;text-align:center}.reminder-settings-recipients-fieldset{margin:0 0 16px;padding:0;border:none}.reminder-settings-recipients-fieldset legend{margin:0 0 10px;padding:0;color:#17221d;font-size:13px;font-weight:800}.reminder-settings-recipient-row{display:grid;grid-template-columns:auto 1fr 1fr;align-items:center;gap:8px;margin:0 0 8px}.reminder-settings-recipient-row input[type=text]{padding:8px 10px;border:1px solid #b9c7bf;border-radius:8px;font:inherit;font-size:13px}.reminder-settings-recipient-enabled{margin:0!important;white-space:nowrap}.reminder-settings-channel-note{color:#7a8780;font-weight:600}.reminder-settings-saved{color:#216749;font-size:13px;font-weight:800}.reminder-settings-line-link{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.reminder-settings-line-link-status{font-size:12px;font-weight:700;color:#216749}.reminder-settings-line-link-button{padding:8px 10px;border:1px solid #b9c7bf;border-radius:8px;background:#fff;color:#17221d;font-size:13px;font-weight:700;text-decoration:none;white-space:nowrap}.reminder-settings-line-link .secondary-button{padding:6px 10px;font-size:12px}.reminder-settings-test-confirm-backdrop{position:fixed;inset:0;z-index:200;display:grid;place-items:center;padding:18px;background:#12251a80}.reminder-settings-test-confirm-dialog{width:min(100%,320px);padding:18px;border-radius:12px;background:#fff;box-shadow:0 18px 55px #00000047}.reminder-settings-test-confirm-dialog p{margin:0 0 14px;color:#17221d;font-size:14px;font-weight:700}@media(max-width:640px){.reminder-settings-recipient-row{grid-template-columns:1fr 1fr;grid-template-areas:"enabled enabled" "label label" "line line"}.reminder-settings-recipient-enabled{grid-area:enabled}.reminder-settings-recipient-row input[type=text]{grid-area:label}.reminder-settings-recipient-row .reminder-settings-line-link{grid-area:line}}@media(max-width:899px){.patient-management-page,.narrow-page{width:calc(100% - 24px);margin:18px auto 40px}.page-header{flex-direction:column;gap:14px;margin-bottom:20px}.header-actions{width:100%;flex-wrap:wrap;gap:10px 14px}.management-grid{grid-template-columns:minmax(0,1fr)}.new-patient-card{position:static}.patient-detail{grid-template-columns:minmax(0,1fr)}.patient-detail>*,.patient-detail-heading,.patient-detail>dl,.patient-detail>.patient-edit-form,.patient-detail>.status-action,.patient-detail>.patient-guidance-setting,.patient-detail>.patient-same-day-alert-section,.patient-detail>.patient-appointment-history,.patient-detail>.patient-admin-tools,.patient-detail>.patient-delete-dialog{grid-column:1}.patient-edit-form,.patient-number-correction{grid-template-columns:minmax(0,1fr)}.deletion-counts{grid-template-columns:repeat(2,minmax(0,1fr))}.ticket-account-grid{grid-template-columns:minmax(0,1fr)}.ticket-service-card{align-items:flex-start;flex-direction:column}.ticket-service-form{grid-template-columns:minmax(0,1fr)}.claim-exclusion-table{display:block;overflow-x:auto}}@media(max-width:479px){.login-page{padding:12px}.login-card{padding:22px 18px}.search-controls,.claim-exclusion-search-row{align-items:stretch;flex-direction:column}.search-controls button,.claim-exclusion-search-row button{min-height:44px}.managed-patient>summary{grid-template-columns:64px minmax(0,1fr);padding:8px 12px}.managed-patient>summary:after{grid-column:1 / -1}.patient-detail{padding:14px 12px}.patient-detail dl{flex-direction:column;gap:10px}.birth-date-control{grid-template-columns:72px minmax(0,1fr) 42px}.qr-history-row{grid-template-columns:54px 64px minmax(0,1fr)}.qr-history-method{grid-column:3;justify-self:start}}@media(max-width:600px){.qr-checkin-page.narrow-page{width:100%;min-width:0;max-width:100%;margin:0 auto;padding-top:18px;padding-right:max(12px,env(safe-area-inset-right));padding-bottom:max(24px,env(safe-area-inset-bottom));padding-left:max(12px,env(safe-area-inset-left));box-sizing:border-box}.qr-checkin-page .page-header{gap:10px;margin-bottom:16px}.qr-checkin-page .header-actions,.qr-checkin-page .header-actions a,.qr-checkin-page .qr-checkin-hint,.qr-checkin-page .qr-checkin-notice{max-width:100%;white-space:normal;overflow-wrap:anywhere}.qr-checkin-page .qr-sound-unlock,.qr-checkin-page .qr-sound-toggle,.qr-checkin-page .qr-history-open,.qr-checkin-page .qr-continue-button{width:100%;min-width:0;max-width:100%;min-height:44px;white-space:normal;box-sizing:border-box}.qr-checkin-page .qr-sound-inline{width:100%;min-width:0;max-width:100%;flex-wrap:wrap}.qr-checkin-page .qr-history-list,.qr-checkin-page .qr-history-row{min-width:0;max-width:100%}.qr-checkin-page .qr-history-name{min-width:0;overflow-wrap:anywhere}}.crossaging-product{scroll-margin-top:28px}.patient-services-diet-energy-explanation{margin-top:18px;padding:clamp(14px,3vw,20px);border-radius:14px;background:#f2faf8}.patient-services-diet-energy-explanation h3{margin-top:0;color:#315d42}.patient-services-diet-energy-explanation figure{width:min(760px,100%);max-width:100%;margin:16px auto 0;padding:8px;border:1px solid #cde5e3;border-radius:13px;background:#fff}.patient-services-diet-energy-explanation img{display:block;width:100%;max-width:100%;height:auto;margin:0 auto;border:0;box-shadow:none;object-fit:contain}.patient-services-diet-energy-explanation figcaption{margin-top:8px;color:#68756e;font-size:12px;line-height:1.6;text-align:center}.happy-wave-amino-barrel{width:min(760px,100%);max-width:100%;margin:22px auto 0;padding:clamp(7px,2vw,12px);border:1px solid #efc8cd;border-radius:15px;background:#fffaf9}.happy-wave-amino-barrel img{display:block;width:100%;max-width:100%;height:auto;margin:0 auto;border:0;box-shadow:none;object-fit:contain}.happy-wave-amino-barrel figcaption{margin-top:9px;color:#625b5e;font-size:12px;line-height:1.65;text-align:center}@media(max-width:419px){.happy-wave-amino-barrel{width:100%;padding:4px}.happy-wave-amino-barrel figcaption{padding:0 6px 5px}}.body-somacy-usage-guide{width:min(640px,100%);max-width:100%;margin:22px auto 0;padding:clamp(7px,2vw,12px);border:1px solid #d6e8df;border-radius:16px;background:#fff}.body-somacy-usage-guide img{display:block;width:100%;max-width:100%;height:auto;margin:0 auto;border:0;box-shadow:none;object-fit:contain}.body-somacy-usage-guide figcaption{margin-top:9px;color:#65736e;font-size:12px;line-height:1.65;text-align:center}.body-somacy-usage-summary{margin-top:18px!important;color:#286f66!important;font-weight:850;text-align:center}.body-somacy-usage-caution{padding:11px 13px;border-radius:10px;background:#eef7f4;color:#536560!important;font-size:13px}@media(max-width:520px){.body-somacy-usage-guide{width:100%;padding:4px}.body-somacy-usage-guide figcaption{padding:0 6px 5px}}.miracle-wave-plant-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(200px,270px);align-items:center;gap:clamp(18px,4vw,30px);min-width:0}.miracle-wave-plant-layout>div{min-width:0}.miracle-wave-plant-layout img{display:block;width:min(270px,100%);max-width:100%;height:auto;max-height:270px;margin:0 auto;border:0;background:transparent;box-shadow:none;object-fit:contain}.miracle-wave-plant-lead{margin:-4px 0 16px!important;color:#447735!important;font-size:clamp(17px,4vw,21px)!important;font-weight:900}.miracle-wave-plant-story{margin-top:14px;padding:11px 13px;border-left:4px solid #8dad58;border-radius:8px;background:#f3f8ed;color:#53634d;font-size:13px;line-height:1.75}@media(max-width:679px){.miracle-wave-plant-layout{grid-template-columns:minmax(0,1fr)}.miracle-wave-plant-layout img{width:min(230px,100%);max-height:240px}}.mm-product-lps-detail-grid{display:grid;gap:16px;margin-top:18px}.mm-product-lps-detail{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.9fr);align-items:center;gap:clamp(18px,4vw,30px);min-width:0;padding:clamp(17px,4vw,24px);border:1px solid #ead6c0;border-radius:15px;background:#fffaf2}.mm-product-lps-detail>div,.mm-product-lps-detail figure{min-width:0}.mm-product-lps-detail p{color:#4e5669;font-size:15px;line-height:1.8;overflow-wrap:anywhere}.mm-product-lps-detail figure{margin:0;padding:10px;border:1px solid #eadcc9;border-radius:12px;background:#fff}.mm-product-lps-detail img{display:block;width:100%;max-width:100%;height:auto;margin:0 auto;border:0;box-shadow:none;object-fit:contain}.mm-product-lps-detail figcaption{margin-top:8px;color:#6c6d73;font-size:12px;line-height:1.6;text-align:center}@media(max-width:679px){.mm-product-lps-detail{grid-template-columns:minmax(0,1fr)}.mm-product-lps-detail figure{width:100%}.mm-product-lps-detail img{max-height:420px}}.tentative-appointment-badge{display:inline-block;margin-left:6px;padding:1px 5px;border:1px solid #b89336;border-radius:4px;color:#725100;background:#fff3cd;font-size:12px;font-weight:700}.reconciliation-page{padding:24px}.reconciliation-summary{display:flex;flex-wrap:wrap;gap:24px;padding:18px;background:#edf5f0;border-radius:10px}.reconciliation-table-scroll{overflow-x:auto}.reconciliation-table{width:100%;border-collapse:collapse;background:#fff}.reconciliation-table th,.reconciliation-table td{padding:14px;border-bottom:1px solid #dce4df;text-align:left}.reconciliation-table th{background:#edf5f0;white-space:nowrap}.reconciliation-next,.reconciliation-check{white-space:nowrap}.reconciliation-next>div+div{margin-top:6px}.reconciliation-tentative .reconciliation-next{background:#fff3cd;color:#725100}.reconciliation-missing .reconciliation-next{background:#fde8e8;color:#a12626;font-weight:700}.reconciliation-absent{background:#efefef;color:#686868}.reconciliation-absent a{color:inherit}.reconciliation-absent .tentative-appointment-badge{background:#e5e5e5;color:#686868;border-color:#aaa}.reconciliation-check{display:flex;align-items:center;gap:8px;cursor:pointer}.reconciliation-check input{width:20px;height:20px}.reconciliation-complete{color:#28623f;font-weight:700}.reconciliation-date-controls{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:16px;margin:16px 0}.reconciliation-date-controls select{width:auto;max-width:100%;padding:8px 12px;font:inherit;font-weight:700}.reconciliation-date-controls [aria-disabled=true]{color:#87918b}.reconciliation-patient-number{font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}.backup-panel{display:inline-flex;flex-wrap:wrap;align-items:center;gap:3px 8px;max-width:100%}.backup-panel small{overflow-wrap:anywhere}.backup-panel .backup-run-button{font-size:12px;padding:3px 8px;min-height:28px;white-space:nowrap}.backup-panel small:empty{display:none}.backup-progress{display:inline-flex;flex-wrap:wrap;align-items:center;gap:4px 8px}.backup-progress progress{width:90px;height:8px;accent-color:#18794e}.backup-trace{font-size:11px;max-width:100%}.backup-trace summary{cursor:pointer}.backup-trace[open]{flex-basis:100%}@media(pointer:coarse){.backup-panel .backup-run-button{min-height:44px}}@media(max-width:1023px),(pointer:coarse){.backup-panel{display:none}}.services-analytics-page{padding:24px}.services-analytics-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.services-analytics-card{padding:16px 18px;background:#edf5f0;border-radius:10px}.services-analytics-card h2{margin:0 0 8px;font-size:15px}.services-analytics-card p{margin:4px 0}.services-analytics-card strong{font-size:26px}.services-analytics-note{color:#59665f;font-size:13px}.services-analytics-section{margin-top:28px}.services-analytics-section h2{font-size:17px}.services-analytics-table{max-width:760px}.services-analytics-period{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:32px;padding:12px 16px;background:#f6f8f7;border-radius:10px}.services-analytics-range{color:#59665f;font-size:13px}
