@import "https://fonts.googleapis.com/css2?family=Noto+Sans+SC:wght@400;500;600;700&family=Noto+Serif+SC:wght@500;600;700&display=swap";:root{color:#174b4a;font-synthesis:none;--teal:#174b4a;--coral:#d47a60;--paper:#f8f7f3;--muted:#899790;--line:#e3e7e1;--sage:#dfe8e2;background:#e1e3df;font-family:Noto Sans SC,sans-serif}*{box-sizing:border-box}body{background:#e1e3df;min-width:320px;margin:0}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:0}#root{background:var(--paper);max-width:540px;min-height:100vh;margin:auto;box-shadow:0 0 45px #183e3d18}.app-shell{min-height:100vh;padding-bottom:82px}.topbar{z-index:5;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#f8f7f3f2;grid-template-columns:42px 1fr 42px;align-items:center;height:70px;padding:0 20px;display:grid;position:sticky;top:0}.topbar h1{text-align:center;margin:0;font-size:16px;font-weight:600}.brand{letter-spacing:1px;grid-column:1/3;font-family:Noto Serif SC,serif;font-size:20px;font-weight:700;line-height:1}.brand span{letter-spacing:2.5px;opacity:.58;margin-top:5px;font:500 7px Noto Sans SC;display:block}.icon-btn{border-radius:50%;place-items:center;width:36px;height:36px;display:grid}.icon-btn:hover{background:#e8eeea}.home-content,.page-content{padding:0 20px}.hero{color:#fff;border-radius:22px;height:430px;position:relative;overflow:hidden}.hero-bg{background:linear-gradient(90deg,#123f3ed9,#174b4a55 55%,#0000),url(https://images.unsplash.com/photo-1576091160399-112ba8d25d1d?auto=format&fit=crop&w=1100&q=88) 50%/cover;position:absolute;inset:0}.hero-copy{position:absolute;top:43px;left:27px}.hero-copy p{letter-spacing:3px;opacity:.76;margin:0 0 16px;font-size:12px}.hero-copy h2{letter-spacing:3px;margin:0 0 25px;font:600 36px/1.32 Noto Serif SC}.hero-index{letter-spacing:1px;opacity:.75;font-size:11px;position:absolute;bottom:20px;right:21px}.primary-button,.outline-button{border-radius:28px;justify-content:center;align-items:center;gap:9px;padding:13px 22px;font-size:14px;font-weight:600;display:inline-flex}.primary-button{background:var(--teal);color:#fff;box-shadow:0 8px 18px #174b4a20}.hero .primary-button{color:var(--teal);background:#fff}.outline-button{border:1px solid var(--teal);background:0 0}.wide{width:100%;margin-top:14px}.trust-row{color:#72847c;justify-content:space-between;padding:22px 5px 30px;font-size:11px;display:flex}.trust-row span{align-items:center;gap:6px;display:flex}.section-block{margin-bottom:34px}.section-head{justify-content:space-between;align-items:flex-end;margin-bottom:16px;display:flex}.section-head h3,.page-intro h2{margin:4px 0 0;font:600 22px Noto Serif SC}.kicker{color:var(--coral);letter-spacing:2px;margin:0;font-size:10px}.text-link{color:#7b8b83;align-items:center;font-size:12px;display:flex}.service-grid{flex-direction:column;gap:10px;display:flex}.service-card{background:#fff;border-radius:17px;align-items:flex-start;gap:14px;padding:18px;display:flex;box-shadow:0 5px 18px #174b4a08}.service-card.compact{padding:15px}.service-icon{width:44px;height:44px;color:var(--teal);background:#e4eee8;border-radius:14px;flex:none;place-items:center;font-family:Noto Serif SC;font-size:18px;display:grid}.service-info{flex:1;min-width:0}.service-info h4{margin:0 0 7px;font:600 18px Noto Serif SC}.compact .service-info h4{margin:0 0 5px;font-size:15px}.service-info p{color:#7d8c85;margin:0;font-size:12px;line-height:1.65}.compact .service-info p{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.service-note{color:var(--coral);margin-top:13px;font-size:11px;display:block}.service-meta{border-top:1px solid var(--line);justify-content:space-between;align-items:center;margin-top:16px;padding-top:13px;display:flex}.service-meta b{font-size:18px}.service-meta span{color:#899790;align-items:center;gap:4px;font-size:11px;display:flex}.card-arrow{color:#9aaba2;align-self:center}.story-strip{background:var(--teal);color:#fff;border-radius:18px;justify-content:space-between;align-items:flex-end;margin:10px 0 26px;padding:24px 21px;display:flex}.story-strip p{letter-spacing:1px;opacity:.7;margin:0 0 10px;font-size:11px}.story-strip h3{margin:0;font:500 18px/1.6 Noto Serif SC}.bottom-nav{z-index:10;border-top:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);width:min(540px,100%);height:72px;padding-bottom:env(safe-area-inset-bottom);background:#f8f7f3ee;grid-template-columns:repeat(4,1fr);display:grid;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.bottom-nav button{color:#a0ada6;flex-direction:column;justify-content:center;align-items:center;gap:5px;font-size:10px;display:flex}.bottom-nav button.active{color:var(--teal)}.page-content{padding-top:25px;padding-bottom:30px}.page-intro{padding:5px 2px 24px}.page-intro h2{font-size:27px}.page-intro>p:last-child{color:#84938b;margin:13px 0 0;font-size:13px;line-height:1.7}.service-list{flex-direction:column;gap:13px;display:flex}.booking-page{padding-bottom:100px}.selected-service,.confirm-banner{background:#e6eee9;border-radius:16px;align-items:center;gap:12px;margin-bottom:18px;padding:15px;display:flex}.selected-service>div:nth-child(2),.confirm-banner div{flex:1}.selected-service b{font-size:14px}.selected-service p,.confirm-banner p{color:#789087;margin:6px 0 0;font-size:11px}.form-section,.summary-card,.price-card,.order-card{background:#fff;border-radius:17px;margin-bottom:13px;padding:18px}.form-section h3{margin:0 0 12px;font:600 17px Noto Serif SC}.form-section-title{justify-content:space-between;align-items:center;display:flex}.segmented{background:#eef3ef;border-radius:20px;padding:3px;display:flex}.segmented button{color:#84948b;border-radius:17px;padding:6px 12px;font-size:11px}.segmented button.selected{background:var(--teal);color:#fff}.field{border-top:1px solid #eef1ed;margin-top:11px;padding:13px 0 0;display:block}.field>span{color:#75867e;margin-bottom:7px;font-size:12px;display:block}.field input,.field select,.field textarea{background:0 0;border:0;outline:0;width:100%;padding:0;font-size:14px}.field input::placeholder,.field textarea::placeholder{color:#b2bcb6}.field textarea{resize:vertical;min-height:60px}.field em{color:var(--coral);margin-top:6px;font-size:11px;font-style:normal;display:block}.slot-grid{grid-template-columns:repeat(2,1fr);gap:8px;display:grid}.slot-grid button{border:1px solid var(--line);color:#71827a;border-radius:9px;padding:9px 5px;font-size:12px}.slot-grid button.selected{border-color:var(--teal);color:var(--teal);background:#e6eee9}.action-bar{width:min(540px,100%);padding:11px 20px calc(11px + env(safe-area-inset-bottom));border-top:1px solid var(--line);z-index:9;background:#f8f7f3ed;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.confirm-banner{color:var(--teal);background:#e6eee9}.confirm-banner>svg{background:var(--teal);color:#fff;border-radius:50%;width:28px;height:28px;padding:4px}.summary-title,.summary-line,.price-card>div{justify-content:space-between;align-items:center;display:flex}.summary-title h3{margin:0;font:600 18px Noto Serif SC}.summary-title span,.price-card b{color:var(--coral);font-weight:700}.summary-line{color:#6f8279;border-top:1px solid #eef1ed;justify-content:flex-start;gap:10px;margin-top:13px;padding-top:13px;font-size:12px}.summary-line svg{color:var(--teal)}.summary-note{color:#7e8d85;background:#f5f7f3;border-radius:9px;margin-top:13px;padding:10px;font-size:11px}.price-card>div{color:#7f8c85;padding:6px 0;font-size:12px}.price-card .total-line{border-top:1px solid var(--line);color:var(--teal);margin-top:9px;padding-top:15px}.price-card strong{font-size:22px}.safe-tip{color:#82938a;align-items:center;gap:6px;margin:17px 3px;font-size:11px;display:flex}.success-page{text-align:center;background:var(--paper);min-height:100vh;padding:82px 28px 35px}.success-mark{background:var(--teal);color:#fff;border-radius:50%;place-items:center;width:68px;height:68px;margin:0 auto 24px;display:grid;box-shadow:0 9px 24px #174b4a24}.success-page h1{margin:10px 0;font:600 28px Noto Serif SC}.success-page>p:not(.kicker){color:#899790;margin:0;font-size:12px}.success-card{text-align:left;background:#fff;border-radius:18px;margin:34px 0 12px;padding:24px}.success-card span{color:#9aa59f;margin-bottom:6px;font-size:11px;display:block}.success-card b{margin-bottom:20px;font-size:14px;display:block}.success-card strong{font-size:17px;display:block}.success-divider{border-top:1px solid var(--line);margin:22px 0}.timeline{grid-template-columns:12px 1fr;align-items:center;gap:5px 10px;display:grid}.timeline i{background:#d8dfda;border-radius:50%;grid-column:1;width:9px;height:9px}.timeline i.done{background:var(--coral)}.timeline div{grid-column:2;justify-content:space-between;font-size:12px;display:flex}.timeline span{color:#a4afa9}.orders-page{padding-top:25px}.order-head{justify-content:space-between;align-items:flex-start;display:flex}.order-head h3{margin:10px 0 0;font:600 18px Noto Serif SC}.status-dot{color:var(--coral);font-size:11px}.order-detail{border-top:1px solid var(--line);color:#788980;flex-direction:column;gap:10px;margin-top:15px;padding-top:13px;font-size:12px;display:flex}.order-detail span{align-items:center;gap:7px;display:flex}.order-actions{justify-content:space-between;align-items:center;margin-top:18px;display:flex}.order-actions .outline-button{padding:8px 15px;font-size:12px}.order-actions>button:last-child{color:#72837b;align-items:center;font-size:12px;display:flex}.empty-state{text-align:center;color:#899790;padding:100px 20px}.empty-state svg{color:#b7c4bc}.empty-state h3{color:var(--teal);margin:16px 0 7px;font:600 19px Noto Serif SC}.empty-state p{margin:0 0 24px;font-size:12px}.profile-page{padding-top:27px}.profile-card{background:var(--teal);color:#fff;border-radius:18px;align-items:center;gap:14px;margin-bottom:16px;padding:25px 20px;display:flex}.profile-avatar{background:#d68c70;border-radius:50%;place-items:center;width:54px;height:54px;font:24px Noto Serif SC;display:grid}.profile-card h2{margin:0 0 6px;font:600 20px Noto Serif SC}.profile-card p{opacity:.7;margin:0;font-size:11px}.profile-menu{background:#fff;border-radius:17px;padding:4px 18px}.profile-menu button{border-bottom:1px solid #eef1ed;justify-content:space-between;align-items:center;width:100%;padding:18px 0;font-size:14px;display:flex}.profile-menu button:last-child{border:0}.profile-menu button span{align-items:center;gap:10px;display:flex}.profile-menu svg{color:#7e9188}@media (width<=380px){.hero{height:390px}.hero-copy h2{font-size:32px}}@media (width>=541px){.app-shell{min-height:100vh}}.brand{grid-column:1/3;align-items:center;gap:8px;display:flex}.brand img{object-fit:contain;width:34px;height:34px}.brand-name{letter-spacing:1px;font:700 19px/1 Noto Serif SC}.brand-name small{letter-spacing:2.5px;opacity:.58;margin-top:5px;font:500 7px Noto Sans SC;display:block}.success-mark{background:#e4eee8;width:78px;height:78px;box-shadow:0 9px 24px #174b4a18}.success-mark img{object-fit:contain;width:62px;height:62px}.profile-stats{background:#fff;border-radius:17px;grid-template-columns:repeat(3,1fr);margin-bottom:14px;padding:16px 8px;display:grid}.profile-stats button{border-right:1px solid #eef1ed;flex-direction:column;align-items:center;gap:5px;display:flex}.profile-stats button:last-child{border:0}.profile-stats b{font-size:17px}.profile-stats span{color:#84948b;font-size:11px}.profile-section{background:#fff;border-radius:17px;margin-bottom:14px;padding:17px 18px}.profile-section-head{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.profile-section-head h3{margin:0;font:600 17px Noto Serif SC}.profile-section-head button{color:var(--coral);font-size:12px}.patient-row{border-top:1px solid #eef1ed;align-items:center;gap:11px;padding:13px 0;display:flex}.patient-avatar{width:37px;height:37px;color:var(--teal);background:#e4eee8;border-radius:50%;place-items:center;font:17px Noto Serif SC;display:grid}.patient-row>div:nth-child(2){flex:1}.patient-row b{font-size:13px}.patient-row small{color:var(--coral);margin-left:4px;font-size:10px;font-weight:400}.patient-row p{color:#8c9a93;margin:5px 0 0;font-size:11px}.patient-row>button{color:#819089;font-size:11px}.patient-form{border-top:1px solid #eef1ed;padding-top:12px}.patient-form h4{margin:0 0 10px;font:600 14px Noto Serif SC}.patient-form input,.patient-form select{background:#f8faf8;border:1px solid #e4eae5;border-radius:9px;outline:0;width:100%;margin-bottom:8px;padding:10px 11px;font-size:12px}.patient-form>div{justify-content:flex-end;align-items:center;gap:12px;margin-top:5px;display:flex}.patient-form>div>button:first-child{color:#82918a;font-size:12px}
