:root{font-family:system-ui,Microsoft YaHei,sans-serif;color:#20342e;background:#fafafa;font-synthesis:none;line-height:1.7}*{box-sizing:border-box}body{margin:0}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer;transition:transform .25s cubic-bezier(.4,0,.2,1),box-shadow .25s;touch-action:manipulation}button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 24px #172f2418}button:active:not(:disabled){transform:scale(.97)}button:focus-visible,a:focus-visible{outline:4px solid #e0a824;outline-offset:4px}button:disabled{cursor:default}h1,h2,p{margin:0}h1{font-size:2.5rem;line-height:1.4}h2{font-size:1.8rem;line-height:1.5}.demo{text-align:center;background:#f4ebd6;color:#624c24;padding:8px 24px;font-size:14px}.shell{max-width:1200px;margin:auto;padding:0 24px}header{padding:24px 0;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #e1e9e4}.brand{text-decoration:none;color:inherit;display:flex;gap:16px;align-items:center}.brand img{width:64px;height:64px;object-fit:cover;border-radius:16px}.brand strong{display:block;font-size:28px;letter-spacing:4px}.brand small{display:block;color:#64766e;font-size:14px}.role{display:flex;gap:8px;align-items:center;color:#527164;border:1px solid #dbe5de;border-radius:24px;padding:8px 16px;background:#fff}.body{padding:32px 0 0}.heading{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px}.eyebrow{font-size:16px;color:#65796e;margin-bottom:8px}.voice{border:1px solid #dbe4de;background:#fff;padding:8px 16px;border-radius:12px;display:flex;align-items:center;gap:8px;color:#426451}.datebar{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;margin-bottom:24px;color:#5b7165;font-size:18px}.homegrid{display:grid;gap:24px}.signcard,.callcard,.panel{background:#fff;border:1px solid #dfe9e2;border-radius:16px;padding:24px}.sectiontitle{display:flex;align-items:center;gap:8px}.signcard .sectiontitle{color:#176a48}.signcard>p,.callcard>p{font-size:20px;color:#64766d;margin-top:8px}.sign{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;width:240px;height:240px;margin:32px auto;border-radius:50%;background:#197b50;color:#fff;border:8px solid #e0f0e5;box-shadow:0 0 0 8px #f1f8f3}.sign strong{font-size:36px}.sign span{font-size:18px}.sign.signed{background:#64776c;border-color:#e4eae5}.signfoot{text-align:center;font-size:20px;color:#52685c}.dot{display:inline-block;width:8px;height:8px;background:#238254;border-radius:50%}.streak{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px;border-top:1px solid #e6ece7;padding-top:24px;margin-top:24px;font-size:20px}.streak svg{color:#a77c2a}.streak b{font-size:28px;color:#197b50}.streak>span:last-child{font-size:16px;color:#748176}.side{display:grid;gap:24px}.callcard .sectiontitle{color:#24629c}.contact{display:flex;align-items:center;gap:16px;padding:24px 0}.avatar{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;background:#e9f1fa;color:#2e67a1;font-size:28px}.contact strong{font-size:24px;display:block}.contact span{font-size:16px;color:#6a7b71}.call{width:100%;display:flex;justify-content:center;align-items:center;gap:16px;background:#2467a3;color:#fff;border:0;border-radius:12px;min-height:80px;font-size:28px}.reward{display:flex;gap:16px;padding:24px;border-radius:16px;background:#f7f2e7;border:1px solid #ebe2cd;color:#795f2c}.reward>svg{flex-shrink:0;margin-top:8px}.reward h2{font-size:24px}.reward p{font-size:18px;margin:8px 0}.reward button{display:flex;align-items:center;gap:8px;border:0;background:transparent;color:#795f2c;padding:0;font-size:18px}.sosbar{margin-top:24px;padding:24px;background:#fff5f3;border:1px solid #efdad6;border-radius:16px;display:flex;flex-wrap:wrap;gap:24px;align-items:center;justify-content:space-between}.sosbar>div{display:flex;gap:16px;align-items:center;color:#a53c32}.sosbar strong{display:block;font-size:24px}.sosbar small{display:block;font-size:18px;color:#875b55}.sos{background:#bf3f35;color:#fff;border:0;border-radius:16px;padding:16px 24px;min-height:120px;min-width:240px;display:flex;align-items:center;justify-content:center;gap:16px;flex-wrap:wrap;font-size:28px;-webkit-user-select:none;user-select:none}.sos span{font-size:18px}.holding{background:#921e18;box-shadow:0 0 0 8px #e6b2aa}.hint{text-align:center;color:#78867c;padding:24px;font-size:16px}nav{position:sticky;bottom:0;background:#fafafaf5;border-top:1px solid #dde6df;display:grid;grid-template-columns:repeat(4,1fr);padding:8px 0;z-index:2}nav button{display:flex;flex-direction:column;align-items:center;gap:8px;background:transparent;border:0;border-radius:12px;color:#607267;padding:8px;font-size:20px}nav button.selected{color:#147247;background:#eaf3ed}.panel{min-height:400px;text-align:center;padding:40px 24px}.panel p{font-size:22px;margin-top:16px}.days{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin:32px 0}.days>div{display:flex;flex-direction:column;align-items:center;padding:16px;border-radius:12px;background:#f1f2ee;color:#758077}.days .done{background:#e3f2e7;color:#19734e}.milestones{display:grid;gap:16px}.milestones article{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:8px;padding:24px;border:1px solid #e4e9e3;border-radius:12px}.settings{text-align:left}.settings>div,.settings>button{display:flex;justify-content:space-between;gap:16px;width:100%;padding:24px 0;border:0;border-bottom:1px solid #e0e7e2;background:#fff;font-size:22px}.settings span{color:#687a6e}.toast{position:fixed;bottom:112px;left:50%;transform:translate(-50%);z-index:5;background:#213d30;color:#fff;padding:16px 24px;border-radius:12px;display:flex;gap:16px;align-items:center;max-width:90vw;width:max-content}.toast button{background:transparent;color:#fff;border:0}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#12231dcc;z-index:10;display:grid;place-items:center;padding:24px}.dialog{max-width:560px;background:#fff;padding:40px;border-radius:16px;text-align:center;color:#2467a3}.dialog p{font-size:22px;margin:24px 0;color:#495e51}.dialog button{border:0;border-radius:12px;background:#bd3f35;color:#fff;font-size:24px;padding:16px 24px}.emergency{color:#bd3f35}.body>section,.homegrid{animation:enter .4s both}.side{animation:enter .4s .1s both}@keyframes enter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media(min-width:576px){.milestones{grid-template-columns:repeat(2,1fr)}}@media(min-width:768px){.homegrid{grid-template-columns:1.15fr 1fr}.signcard,.callcard{padding:32px}.milestones{grid-template-columns:repeat(4,1fr)}}@media(min-width:1024px){.body{padding-top:40px}.sign{width:256px;height:256px}.sos{min-width:320px}}@media(max-width:575px){h1{font-size:32px}.role{font-size:14px;padding:8px}.brand small{font-size:12px}.shell{padding:0 24px}.sos{width:100%}.sosbar{padding:24px 16px}.settings>div,.settings>button{flex-wrap:wrap}.signcard>p,.callcard>p{font-size:26.67px}.contact span,.hint{font-size:20px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}.role-switch{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;padding:16px 24px;background:#eef3ef;border-bottom:1px solid #dde6df}.role-switch button,.portal button{border:1px solid #d7e2db;background:#fff;border-radius:8px;padding:8px 16px;color:#355e47;display:inline-flex;gap:8px;align-items:center;justify-content:center}.role-switch .current,.portal .current{background:#197b50;color:#fff}.portal{max-width:1200px;margin:auto;padding:0 24px}.portal-layout{display:grid;gap:24px;padding:24px 0}.portal aside{display:flex;gap:8px;overflow:auto;align-items:start}.portal aside button{white-space:nowrap}.portal-main{min-width:0}.portal-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:16px}.simulation{color:#6c786f;font-size:14px;margin-bottom:24px}.module{background:#fff;border:1px solid #dfe9e2;border-radius:16px;padding:24px;margin-top:24px}.module>p{color:#65796e;margin:16px 0}.module h2{font-size:24px}.portal label{display:flex;flex-direction:column;gap:8px;margin:16px 0;font-weight:600}.portal input,.portal textarea{font:inherit;padding:16px;border:1px solid #b9cbbf;border-radius:8px;width:100%;background:#fff;color:#20342e}.portal textarea{min-height:120px;resize:vertical}.portal .primary{background:#197b50;color:#fff;border:0;padding:16px 24px}.portal button:disabled{opacity:.6}.form-grid{display:grid;gap:16px}.data-row{display:flex;gap:16px;align-items:center;justify-content:space-between;flex-wrap:wrap;padding:24px 0;border-bottom:1px solid #e4eae5}.stat-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.stat{padding:24px;background:#fff;border:1px solid #dfe9e2;border-radius:12px;display:flex;flex-direction:column;gap:8px}.stat strong{font-size:32px;color:#197b50}.stat span{color:#607267}.elder-record{display:flex;gap:24px;align-items:center;flex-wrap:wrap;padding:24px 0}.record-avatar{width:64px;height:64px;display:grid;place-items:center;background:#e6f2ea;color:#197b50;border-radius:50%;font-size:24px}.elder-record small{font-weight:400;font-size:14px;color:#6e7f74}.elder-record p{display:flex;align-items:center;gap:8px;margin:8px 0}.badge{display:inline-block;background:#f8eed7;color:#775b1f;padding:8px 16px;border-radius:8px;font-size:14px}.badge.safe{background:#e4f2e9;color:#197b50}.actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}.inline-notice{padding:16px;background:#f8efda;border-radius:8px;color:#705922;margin:16px 0}.empty{padding:40px 24px;display:flex;align-items:center;flex-direction:column;gap:16px;color:#6c7c71}.alert-record{padding:24px;background:#fff0ed;color:#a2382f;border-radius:8px;margin:24px 0}.danger-text{color:#ad3e31}.status-flow{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}.status-flow span{padding:8px;border-radius:8px;background:#f1f4f1}.portal label.search{flex-direction:row;align-items:center;margin:0;max-width:320px;font-weight:400}.search input{padding:8px}.module{animation:enter .4s both}@media(min-width:576px){.stat-grid{grid-template-columns:repeat(3,1fr)}.form-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:1024px){.portal-layout{grid-template-columns:176px 1fr}.portal aside{flex-direction:column;border-right:1px solid #e0e7e1;padding-right:16px}.portal aside button{width:100%;justify-content:flex-start;padding:16px}.elder-record .actions{margin-left:auto}}.elder-preview{padding:16px 24px 40px;background:#f3f5f7;min-height:calc(100vh - 80px)}.preview-caption{text-align:center;font-size:14px;color:#667582;margin:0 0 16px}.elder-phone{position:relative;max-width:502px;margin:auto;background:#fff;min-height:840px;overflow:hidden;box-shadow:0 8px 32px #20374a12;color:#25354b}.elder-phone .elder-top{height:64px;display:flex;align-items:center;justify-content:center;background:#2196ee;color:#fff;padding:8px 24px;border:0;position:relative;font-size:28px;font-weight:700}.elder-top button{position:absolute;right:16px;top:16px;background:transparent;color:#fff;border:0;padding:0}.elder-buttons{display:flex;flex-direction:column;align-items:center;padding:32px 24px 16px;gap:0}.elder-circle{width:216px;height:216px;flex-shrink:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:8px;border-radius:50%;border:6px solid #ffffff40;box-shadow:0 4px 8px #00000018}.elder-circle svg{width:64px;height:64px;stroke-width:1.8}.elder-circle strong{font-size:28px;line-height:1.6}.circle-video{background:#81c784;color:#fff}.circle-sign{background:#fff36a;color:#a89053}.circle-sign.is-signed{background:#dce3df;color:#52665a}.circle-sos{background:#ed3433;color:#fff}.circle-sos svg{transform:rotate(-20deg)}.elder-footer{text-align:center;padding:16px 24px 24px;color:#8b97a6;font-size:16px}.elder-footer button{padding:0;background:transparent;border:0;color:#2196ee}.elder-modal-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#203654b8;display:flex;align-items:center;justify-content:center;padding:32px;z-index:5}.elder-confirm,.elder-success{background:#fff;border-radius:16px;max-width:336px;width:100%;padding:32px 24px;text-align:center;display:flex;align-items:center;flex-direction:column;gap:16px;box-shadow:0 16px 48px #102a4229}.elder-confirm>svg{color:#ef4444;background:#fff0ef;border-radius:50%;padding:8px;width:64px;height:64px}.elder-confirm h2{color:#e33434;font-size:28px}.elder-confirm p,.elder-success p{font-size:20px;color:#667389}.elder-confirm button,.elder-success button{width:100%;border:0;border-radius:12px;padding:16px 8px;font-size:24px;background:#f0f4f8;color:#566477}.elder-confirm .confirm-sos{background:#e62229;color:#fff;touch-action:none;-webkit-user-select:none;user-select:none}.elder-confirm .is-holding{background:#ad131b;box-shadow:0 0 0 8px #f8c2c5}.elder-success>svg{color:#22aa80;background:#e3f7ee;border-radius:50%;padding:8px}.elder-success h2{font-size:28px}.elder-success button{color:#17805b;background:#e9f6ee}.elder-notice{position:absolute;bottom:16px;left:16px;right:16px;background:#f1f5fa;color:#344b60;border:1px solid #d9e4ed;padding:16px;border-radius:12px;display:flex;align-items:center;gap:8px;font-size:18px;z-index:3}.elder-notice button{background:transparent;border:0;padding:0;color:inherit;margin-left:auto}.elder-menu{position:absolute;z-index:4;top:64px;right:16px;left:16px;padding:24px;display:flex;flex-direction:column;gap:16px;background:#fff;border:1px solid #d8e3ed;box-shadow:0 8px 24px #19375429}.elder-menu button{padding:16px;border:0;background:#eef5fb;border-radius:8px;color:#255879;font-size:20px}.elder-menu p{font-size:20px}.video-screen{background:#111a2b;color:#fff}.video-screen .elder-top{background:#1b2638;font-size:20px;justify-content:start}.elder-call{height:776px;position:relative;padding:24px}.call-announcement{display:flex;align-items:center;gap:8px;background:#eef3f8;color:#395d79;border-radius:24px;padding:8px 16px;width:max-content;margin:0 auto}.remote-video{position:absolute;top:35%;left:0;right:0;display:flex;flex-direction:column;text-align:center;font-size:28px;color:#69778c;gap:16px}.remote-video small{font-size:18px}.self-video{position:absolute;bottom:168px;right:24px;width:104px;height:144px;background:#344256;border:1px solid #5c6a7d;border-radius:12px;display:grid;place-items:center}.video-controls{position:absolute;bottom:56px;left:24px;right:24px;display:flex;justify-content:space-around}.video-controls button,.hangup{border:0;width:64px;height:64px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#273345;color:#fff}.video-controls .hangup,.hangup{background:#f13e49}.video-controls small{font-size:12px}.location-placeholder{height:320px;background:radial-gradient(#cbd6e2 1px,transparent 1px) 0 0/16px 16px #e5eaf1;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:16px;color:#ed474c}.location-placeholder span{background:#fff;border-radius:24px;padding:8px 16px;color:#46586c}.elder-sos-screen{text-align:center}.elder-sos-screen>h2{padding:24px 16px 0;font-size:28px;color:#eb4147}.elder-sos-screen>p{padding:8px 24px;color:#d84147;background:#fff1f0;font-size:24px}.dial-panel{padding:32px 24px;display:flex;flex-direction:column;align-items:center;gap:16px}.dial-panel strong{font-size:28px}.dial-panel p{font-size:20px;color:#748295}.dial-panel .hangup{border-radius:12px;width:auto;height:auto;padding:16px 24px;gap:8px;font-size:24px}.elder-buttons>*{animation:enter .4s both}.elder-buttons>:nth-child(2){animation-delay:.1s}.elder-buttons>:nth-child(3){animation-delay:.2s}@media(max-width:575px){.elder-preview{padding:8px 0 0}.preview-caption{padding:8px 24px;font-size:12px}.elder-phone{box-shadow:none;min-height:calc(100vh - 136px)}.elder-buttons{padding-top:24px}.elder-circle{width:192px;height:192px}.elder-footer{font-size:16px}}@media(prefers-reduced-motion:reduce){.elder-buttons>*{animation:none}}.elder-hub{position:relative;padding-bottom:104px;min-height:776px}.elder-tabs{position:absolute;bottom:0;left:0;right:0;display:grid;grid-template-columns:repeat(4,1fr);background:#fff;border-top:1px solid #dde7ef;padding:8px 0;z-index:2}.elder-tabs button{display:flex;flex-direction:column;gap:8px;align-items:center;justify-content:center;padding:8px 0;border:0;background:#fff;color:#64768b;font-size:24px;min-height:88px;border-radius:0}.elder-tabs .active-tab{color:#127ac7;background:#f0f8ff}.elder-subpage{padding:24px;display:flex;flex-direction:column;gap:24px;animation:enter .4s both}.elder-subpage h1{font-size:32px}.elder-subpage h2{font-size:28px}.elder-subpage p,.elder-subpage li{font-size:26.67px;line-height:1.7}.elder-subpage ul{padding-left:24px;margin:0;display:flex;flex-direction:column;gap:16px}.elder-subpage button{font-size:26.67px;padding:16px;border:1px solid #ccdce8;border-radius:12px;background:#f2f8fc;color:#205a85;min-height:80px;display:flex;align-items:center;justify-content:center;gap:8px}.elder-subpage button:disabled{color:#6f7980;background:#edf1f4}.elder-section{background:#f3f8fc;padding:24px;border:1px solid #dbe7f0;border-radius:12px;display:flex;flex-direction:column;gap:16px}.elder-week{display:grid;grid-template-columns:repeat(7,1fr);gap:8px}.elder-week>div{display:flex;flex-direction:column;align-items:center;gap:8px}.elder-week span{font-size:16px;color:#62798e}.elder-week b{font-size:24px;color:#16875c}.elder-subpage .elder-info{font-size:20px;color:#667b8c}.elder-achievements{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.elder-achievements button{display:flex;flex-direction:column;gap:8px;color:#748091}.elder-achievements span{font-size:20px}.elder-empty{display:flex;align-items:center;flex-direction:column;gap:24px;padding:32px 0;color:#667d8d;text-align:center}.elder-setting-list{display:flex;flex-direction:column;gap:16px}.elder-setting-list button{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;text-align:left}.elder-setting-list span{color:#667d8d;font-size:20px}.binding-code{text-align:center;padding:24px 0;background:#edf6ff;color:#176bab;letter-spacing:8px;font-size:48px;font-weight:700;border-radius:12px}.elder-subpage .elder-back{align-self:start;border:0;background:transparent;padding:0;font-size:24px;min-height:48px}.achievement-poster{padding:32px 24px;display:flex;align-items:center;flex-direction:column;gap:24px;background:#fff4d5;color:#8b601b;border:8px solid #f0dba4;text-align:center;border-radius:16px}.achievement-poster strong{font-size:56px}.achievement-poster small{font-size:20px}.elder-message{text-align:left}.elder-message span{display:flex;flex-direction:column;gap:8px}.elder-message small{font-size:20px}.elder-network{display:flex;gap:8px;background:#fff0cd;color:#6f4e14;font-size:20px;padding:16px 24px}.elder-large .elder-subpage p,.elder-large .elder-subpage button,.elder-large .elder-subpage li{font-size:32px}.elder-contrast{color:#050505;background:#fff}.elder-contrast .elder-subpage p,.elder-contrast .elder-info,.elder-contrast .elder-setting-list span{color:#111}.elder-contrast button{border:2px solid #141414}.elder-notice{bottom:112px}.elder-success{max-height:90%;overflow:auto}.shop-warning{font-size:12px;color:#85682c;background:#fff4d9;padding:8px;border-radius:8px;margin:8px 0}.shop-feedback,.shop-error{font-size:13px;padding:16px;border-radius:8px;background:#fff2d4;color:#715820;margin:16px 0;display:flex;gap:8px;align-items:center}.shop-feedback button{margin-left:auto;border:0;background:none;color:inherit;font-size:20px}.shop-error{color:#ad3434;background:#fff0ef}.shop-shortcuts{display:flex;gap:8px;justify-content:space-between;margin:16px 0}.shop-shortcuts button{border:1px solid #dfe8ed;background:#fff;color:#52808e;border-radius:8px;padding:8px;font-size:13px}.shop-client h1{font-size:24px}.shop-page-title{padding:16px 0;margin:0}.shop-client h2{font-size:18px}.shop-client p{font-size:13px;line-height:1.8}.shop-field{display:flex;flex-direction:column;gap:8px;margin:16px 0;font-size:13px;color:#718592}.shop-field input,.shop-field textarea,.shop-field select,.shop-price-range input{width:100%;min-width:0;padding:16px;border:1px solid #dce6ed;border-radius:8px;font:inherit;color:#385369;background:#fff}.shop-field textarea{min-height:112px;resize:vertical}.shop-price-range{display:flex;align-items:center;gap:8px}.shop-price-range label{min-width:0;flex:1;font-size:12px;color:#8193a0}.shop-price-range input{padding:8px;margin-top:8px}.shop-detail{display:flex;flex-direction:column;gap:16px}.shop-detail .shop-field{margin:0}.shop-detail .mini-product-art{height:192px}.shop-detail .mini-primary,.shop-secondary{margin-top:0}.shop-price{font-size:28px;color:#d17d38}.shop-counter{display:flex;align-items:center;gap:16px}.shop-counter button{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:#f1f6f9;border:1px solid #e4ebf0;color:#4088a7;border-radius:8px;padding:0}.shop-counter button:disabled{opacity:.4;cursor:default}.shop-counter span{font-size:14px;min-width:16px;text-align:center}.shop-check{display:flex;align-items:center;gap:8px;color:#657d8c;font-size:14px;margin:16px 0}.shop-check input{accent-color:#17aa70;width:20px;height:20px;flex-shrink:0}.shop-cart-line p{margin:8px 0;color:#8495a1}.shop-cart-line .shop-check{margin-top:0}.shop-line-actions{display:flex;justify-content:space-between;align-items:center;margin-top:16px}.shop-link{border:0;background:none;padding:16px 0;color:#3588be;font-size:13px}.shop-secondary{border:1px solid #cde6d9;padding:16px;border-radius:8px;background:#f0f9f4;color:#249269;width:100%;margin:16px 0;font-size:14px;min-height:48px}.shop-secondary:disabled{background:#edf0f2;color:#95a4af;border-color:#e3e7ea;cursor:default}.shop-total{display:flex;align-items:center;justify-content:space-between;padding:16px 0;color:#728392;font-size:14px;gap:8px}.shop-total strong{color:#ce7630;font-size:20px}.shop-address-button{border:0;border-radius:16px;display:flex;align-items:center;gap:16px;width:100%;padding:24px 16px;background:#fff;color:#589480;text-align:left;margin:16px 0}.shop-address-button>span{display:flex;flex:1;flex-direction:column;gap:8px;min-width:0}.shop-address-button strong{font-size:14px;color:#3d5668}.shop-address-button small{font-size:12px;color:#8394a0;word-break:break-all}.shop-order-line{display:flex;align-items:center;gap:16px;justify-content:space-between;padding:16px 0;border-bottom:1px solid #edf1f4;font-size:13px;color:#526c7e}.shop-order-card{border:0;display:flex;flex-direction:column;gap:16px;padding:24px 16px;background:#fff;border-radius:16px;width:100%;margin:16px 0;text-align:left;color:#657d8c}.shop-order-card>div{display:flex;justify-content:space-between;gap:16px;width:100%}.shop-order-card strong{font-size:13px;color:#279a71}.shop-order-card small{font-size:11px;color:#9aa6af}.shop-order-card p{font-size:14px;color:#3c5669}.shop-order-card>span{align-self:end;font-size:13px}.shop-logistics{padding:16px;background:#f3f8fb;border-radius:8px;margin-top:16px;font-size:13px}.shop-logistics p{padding-top:8px;color:#8093a1;word-break:break-word}.shop-evidence{display:flex;gap:8px;flex-wrap:wrap;padding:16px 0}.shop-evidence img{width:80px;height:80px;object-fit:cover;border-radius:8px;border:1px solid #e2e7eb}.shop-dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#10263e99;z-index:20;display:grid;place-items:center;padding:24px}.shop-admin-dialog{padding:32px;background:#fff;border-radius:12px;max-width:560px;width:100%;max-height:90vh;overflow:auto}.shop-admin-dialog h2{font-size:24px}.shop-admin-dialog label{display:flex;flex-direction:column;gap:8px;margin:16px 0}.shop-admin-dialog input,.shop-admin-dialog textarea{font:inherit;padding:8px 16px;border:1px solid #ccdbe7;border-radius:8px}.shop-admin-dialog textarea{min-height:112px}.shop-admin-filters{display:flex;gap:16px;flex-wrap:wrap}.shop-admin-filters select{font:inherit;padding:8px;background:#fff;border:1px solid #d4e1eb;border-radius:4px}.shop-admin-after-sale{padding:24px 0;border-bottom:1px solid #e3ebf2;display:flex;flex-direction:column;gap:16px}.shop-admin-after-sale p{font-size:14px}.shop-admin-after-sale>.primary{align-self:start}.shop-client .mini-categories{padding:16px 0}.platform-caption{text-align:center;font-size:14px;color:#728292;padding:16px 24px}.mini-stage{background:#edf0f4;padding-bottom:32px;min-height:100vh}.mini-phone{max-width:430px;margin:0 auto;background:#f6f7f8;min-height:820px;position:relative;box-shadow:0 8px 32px #10293e15;color:#243344;font-size:16px}.mini-phone button{font:inherit;cursor:pointer;transition:transform .25s cubic-bezier(.4,0,.2,1),box-shadow .25s}.mini-header{height:64px;background:#fff;border:0;padding:16px 24px;position:relative;display:flex;justify-content:center;align-items:center;gap:8px}.mini-header>strong{font-size:17px;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wx-capsule{position:absolute;right:16px;display:flex;align-items:center;gap:8px;border:1px solid #e5e7eb;border-radius:24px;padding:0 8px;height:32px;background:#fff;color:#222}.wx-capsule span{height:16px;width:1px;background:#e5e7eb}.mini-header .mini-back{position:absolute;left:16px;display:flex;align-items:center;justify-content:center;border:0;background:transparent;padding:8px;color:#263b4b}.mini-scroll{padding:0 16px 112px;min-height:756px;animation:enter .4s both}.mini-demo{font-size:11px;color:#87929c;padding:8px 0;text-align:center}.mini-notice{display:flex;align-items:center;gap:8px;color:#72561c;background:#fff1cf;border-radius:8px;padding:16px;font-size:14px;margin:8px 0}.mini-notice button{border:0;background:transparent;margin-left:auto;font-size:24px;color:inherit}.mini-alert{background:#ff4d57;color:#fff;border:0;width:calc(100% + 32px);margin-left:-16px;padding:8px 16px;display:flex;align-items:center;gap:8px;text-align:left}.mini-alert span{flex:1;font-size:13px}.mini-section-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:24px 0 16px}.mini-section-head h1,.mini-profile h1{font-size:24px;line-height:1.5}.mini-kicker{color:#81928d;font-size:12px;display:block;margin-bottom:8px}.mini-icon-button{display:grid;place-items:center;border:0;background:#e7f2ed;color:#149769;border-radius:50%;width:40px;height:40px}.mini-person{border:0;width:100%;display:flex;align-items:center;gap:16px;text-align:left;background:#fff;border-radius:16px;padding:24px 16px;box-shadow:0 2px 8px #1e344a06;color:#23384a;margin-bottom:24px}.mini-person>span:nth-child(2){display:flex;flex-direction:column;gap:0;flex:1}.mini-person strong{font-size:20px}.mini-person small{color:#85919b;font-size:12px}.mini-person .mini-device{font-size:11px;padding-top:8px;color:#8a969f}.mini-avatar{width:56px;height:56px;flex-shrink:0;border-radius:50%;display:grid;place-items:center;background:#eef0e6;color:#798964;font-size:24px;font-weight:600}.mini-card{border-radius:16px;background:#fff;padding:24px 16px;margin-bottom:24px;box-shadow:0 2px 8px #1e344a05}.mini-card-heading{display:flex;justify-content:space-between;gap:8px;align-items:center;margin-bottom:16px;color:#6e7d89;font-size:13px}.mini-card-heading>span:first-child{display:flex;gap:8px;align-items:center}.mini-card-heading button{padding:0;background:none;border:0;color:#7c8e9b;display:flex;align-items:center;font-size:12px}.mini-sign-status{padding:16px;background:#fbf6e9;color:#ac8542;border-radius:8px;display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:14px}.mini-sign-status small{font-size:11px}.mini-sign-status.is-safe{background:#eff9f3;color:#0da96a}.mini-muted{color:#8a969f;font-size:12px;line-height:1.8;margin-top:16px}.mini-free{color:#1baf77;background:#eff9f4;font-size:11px;border-radius:8px;padding:0 8px}.mini-sos-status{display:flex;align-items:center;flex-direction:column;gap:8px;padding:16px 0;color:#83918f}.mini-sos-status svg{color:#49b891}.mini-sos-status strong{font-size:16px;font-weight:500}.mini-sos-status small{font-size:12px}.mini-sos-status.is-alert{color:#e1454f}.mini-sos-status.is-alert svg{color:#ef5962}.mini-quick-actions{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px}.mini-quick-actions button{border:0;padding:16px 8px;border-radius:12px;background:#e8f7ef;color:#149868;display:flex;align-items:center;justify-content:center;gap:8px;font-size:14px}.mini-quick-actions button:last-child{background:#e9f2fe;color:#2786d8}.mini-tabbar{position:absolute;bottom:0;left:0;right:0;display:grid;grid-template-columns:repeat(4,1fr);background:#fff;border-top:1px solid #e9edf0;padding:8px 0;z-index:2}.mini-tabbar button{position:relative;display:flex;flex-direction:column;align-items:center;gap:8px;border:0;background:none;padding:8px 0;color:#a0a8ae;font-size:11px}.mini-tabbar .active{color:#168fff}.mini-tabbar i{position:absolute;width:8px;height:8px;background:#ff5360;border-radius:50%;top:8px;right:32px}.mini-profile{display:flex;align-items:center;gap:16px;padding:24px 0}.mini-profile p{font-size:12px;color:#8b969d;margin-top:8px}.mini-member{background:linear-gradient(110deg,#ddbd79,#c89b4e);border:0;border-radius:16px;color:#fff;width:100%;display:flex;align-items:center;justify-content:space-between;text-align:left;padding:24px 16px;margin-bottom:24px}.mini-member>div{display:flex;flex-direction:column;gap:8px}.mini-member span{font-size:12px}.mini-member strong{font-size:20px}.mini-member small{font-size:11px;color:#fff6e3}.mini-member.worker-member{background:linear-gradient(110deg,#4595cb,#2676b2)}.mini-list{border-radius:16px;background:#fff;overflow:hidden}.mini-list>button{display:flex;align-items:center;gap:16px;padding:24px 16px;width:100%;border:0;border-bottom:1px solid #f2f3f5;background:#fff;color:#687f8b;font-size:14px;text-align:left}.mini-list>button:last-child{border:0}.mini-list>button>span{flex:1;color:#394c59}.mini-bottom-note{text-align:center;font-size:12px;color:#9ba5ab;padding:24px 0}.mini-message-card{border:0;display:flex;width:100%;padding:24px 16px;gap:16px;background:#fff;border-radius:16px;text-align:left;align-items:center;color:#3d5363}.mini-message-card>span:nth-child(2){flex:1}.mini-message-card strong{font-size:15px}.mini-message-card p{font-size:13px;color:#788995;margin:8px 0}.mini-message-card small{font-size:11px;color:#9aa5ad}.mini-message-icon{display:grid;place-items:center;width:40px;height:40px;background:#eaf3ff;color:#2b8fe7;border-radius:12px}.mini-empty{display:flex;align-items:center;flex-direction:column;padding:48px 16px;gap:16px;text-align:center;color:#9ba9b1}.mini-empty h2{font-size:20px;font-weight:500;color:#637d8c}.mini-empty p{font-size:13px;color:#8b9ba5}.mini-primary{display:flex;align-items:center;justify-content:center;min-height:48px;border:0;background:#07bf69;color:#fff;border-radius:8px;width:100%;padding:16px;margin-top:16px}.mini-primary:disabled{background:#e5e9ed;color:#8b969f;cursor:default}.mini-address{display:flex;gap:8px;font-size:13px;color:#80939e;margin-bottom:24px}.static-person{padding:0;box-shadow:none}.mini-help h2{font-size:18px;margin-bottom:16px}.mini-help p{font-size:14px;color:#7b8e9c;margin-bottom:24px}.mini-shop-banner{background:#e8f3ef;border-radius:16px;padding:24px 16px;display:flex;flex-direction:column;gap:8px;color:#30775f}.mini-shop-banner strong{font-size:20px}.mini-shop-banner span{font-size:12px;color:#6c9182}.mini-categories{display:flex;gap:8px;overflow:auto;padding:24px 0}.mini-categories button{white-space:nowrap;border:0;background:#fff;color:#7a8a95;padding:8px;border-radius:16px;font-size:12px}.mini-categories .selected{background:#e1f4eb;color:#128b61}.mini-products{display:grid;grid-template-columns:1fr 1fr;gap:16px}.mini-products>button{min-width:0;background:#fff;border:0;border-radius:12px;display:flex;flex-direction:column;gap:8px;text-align:left;padding:8px;color:#364e60}.mini-product-art{width:100%;height:128px;display:grid;place-items:center;background:#eff4ef;color:#82a791;border-radius:8px}.mini-products strong{font-size:14px}.mini-products span{font-size:11px;color:#84958d}.mini-products small{font-size:10px;color:#a68d62}.mini-text-button{border:0;background:none;color:#2888bc;padding:16px;font-size:14px}.mini-business .module{padding:24px 16px;border:0;margin-top:16px;box-shadow:none;border-radius:16px}.mini-business .module h2{font-size:18px;line-height:1.6}.mini-business .module>p{font-size:13px}.mini-business .module button{font-size:14px;padding:8px 16px;border:1px solid #e1e8ed;background:#f5f9fc;color:#3285b9;border-radius:8px;min-height:40px;display:inline-flex;gap:8px;align-items:center;justify-content:center}.mini-business .module button.primary{background:#08b96c;color:#fff;border:0;padding:16px}.mini-business .module button:disabled{background:#eef0f3;color:#99a5af}.mini-business .form-grid{display:block}.mini-business label{display:flex;flex-direction:column;gap:8px;font-size:13px;color:#72838d;margin:16px 0}.mini-business input,.mini-business textarea{width:100%;min-width:0;padding:16px;border:1px solid #e0e6eb;border-radius:8px;font:inherit;color:#344c5e;background:#fafbfc;resize:vertical}.mini-business textarea{min-height:112px}.mini-business .data-row{font-size:14px;padding:16px 0}.mini-business .stat-grid{grid-template-columns:1fr 1fr;gap:8px}.mini-business .stat{padding:16px;border-color:#edf0f2}.mini-business .stat strong{font-size:24px}.mini-business .stat span{font-size:12px}.mini-business .status-flow{gap:8px}.mini-business .status-flow span{font-size:12px;padding:8px;background:#f0f3f7;color:#8697a3}.mini-business .status-flow .current{background:#e3f6ec;color:#119565}.mini-business .alert-record{padding:16px;font-size:14px;background:#fff0ef}.mini-business .alert-record p{font-size:12px;margin-top:8px}.mini-business .empty{padding:32px 0}.mini-business .empty p,.mini-business .inline-notice{font-size:13px}.mini-business .actions{gap:8px}.mini-business .module h2+p{font-size:13px}.mini-business .module .primary svg{width:18px}.mini-business .module .primary{font-size:14px}.mini-business .module .primary:disabled{background:#e6ebef}.mini-scroll>section,.mini-scroll>.mini-person,.mini-profile,.mini-list{animation:enter .4s both}.mini-phone button:focus-visible{outline:3px solid #278ce8;outline-offset:3px}.web-portal{max-width:none;margin:0;padding:0;background:#f0f3f7;min-height:100vh;font-size:14px}.web-portal>header{padding:16px 24px;background:#fff;border-bottom:1px solid #e6ebf0;gap:24px}.web-portal .brand img{width:40px;height:40px;border-radius:8px}.web-portal .brand strong{font-size:20px;letter-spacing:0}.web-portal .brand small{display:none}.web-portal>header>span{color:#7a8b99;font-size:13px}.web-portal .portal-layout{padding:0;gap:0;grid-template-columns:200px minmax(0,1fr);align-items:stretch;min-height:calc(100vh - 80px)}.web-portal .portal-layout>aside{background:#061c2e;color:#a9bece;border:0;display:flex;flex-direction:column;gap:8px;padding:24px 0;overflow:visible}.web-portal .portal-layout>aside button{border:0;background:none;color:#a8bece;width:100%;font-size:14px;padding:16px 24px;border-radius:0;justify-content:flex-start;text-align:left;white-space:normal}.web-portal .portal-layout>aside button.current{background:#168fff;color:#fff}.web-portal .portal-main{width:100%;max-width:1248px;margin:0 auto;padding:24px}.web-portal .portal-heading h1{font-size:24px}.web-portal .eyebrow{font-size:12px;margin-bottom:8px;color:#8b9ba6}.web-portal .portal-heading>svg{width:28px;height:28px;color:#238bf0}.web-portal .simulation{font-size:12px;margin-bottom:24px}.web-portal .stat-grid{grid-template-columns:repeat(3,1fr);gap:24px}.web-portal .stat{border:0;border-radius:8px;padding:24px;gap:16px}.web-portal .stat strong{color:#1e3a52;font-size:32px}.web-portal .stat span{font-size:13px}.web-portal .module{border:0;border-radius:8px;padding:24px;box-shadow:none}.web-portal .module h2{font-size:18px}.web-portal .module>p{font-size:14px}.web-portal input,.web-portal textarea{font-size:14px;padding:8px 16px;border-color:#dce3ea;border-radius:4px}.web-portal .search{max-width:280px}.web-portal button{border-radius:4px;font-size:14px}.web-portal .primary{background:#168fff;padding:8px 16px}.web-portal .data-row{padding:16px 0;font-size:14px}.web-portal .elder-record{border:1px solid #e7edf2;border-radius:4px;padding:16px;font-size:14px;gap:16px}.web-portal .elder-record h2{font-size:16px}.web-portal .record-avatar{width:40px;height:40px;font-size:16px;background:#eaf4ff;color:#3898e5}.web-portal .elder-record p{font-size:13px}.web-portal .badge{font-size:12px;padding:0 8px}.web-portal .actions button{padding:8px;color:#168fff;background:#f0f7ff;border-color:#dbeaff}.web-portal .status-flow span{font-size:12px}.web-portal .status-flow .current{background:#168fff;color:#fff}.web-portal .alert-record{background:#fff2f0;padding:16px}.web-portal .empty h2{font-size:18px}.web-portal .empty p,.web-portal .module label{font-size:14px}.web-portal .form-grid{gap:24px}.web-portal .module .stat{background:#f7faff}.web-table-wrap{overflow:auto}.web-table{border-collapse:collapse;width:100%;font-size:13px;white-space:nowrap}.web-table th{font-weight:500;color:#60778a;background:#f5f8fb}.web-table th,.web-table td{padding:16px;text-align:left;border-bottom:1px solid #edf1f5}.web-table td button{border:0;color:#168fff;background:none;padding:0}.web-table-footer{display:flex;justify-content:space-between;align-items:center;padding-top:24px;color:#8496a5;font-size:12px}.web-table-footer span:last-child{padding:0 8px;border:1px solid #168fff;border-radius:4px;color:#168fff}.web-map-placeholder{min-height:192px;border-radius:8px;background:repeating-linear-gradient(0deg,transparent,transparent 31px,#e3eaf0 32px),repeating-linear-gradient(90deg,#f3f7fa,#f3f7fa 31px,#e3eaf0 32px);display:flex;flex-direction:column;gap:8px;align-items:center;justify-content:center;color:#7b95a8;margin-top:24px;font-size:13px}.web-map-placeholder svg{color:#3c94db}.web-portal .portal-main{animation:enter .4s both}@media(max-width:575px){.mini-stage{padding-bottom:0}.platform-caption{font-size:12px;padding:8px}.mini-phone{box-shadow:none;width:100%;max-width:430px}.mini-header{padding-right:104px;padding-left:56px}.mini-header>strong{font-size:16px}.web-portal .portal-layout{grid-template-columns:144px minmax(0,1fr)}.web-portal .portal-layout>aside button{padding:16px;font-size:13px}.web-portal .portal-main{padding:24px}.web-portal .stat-grid{grid-template-columns:1fr}.web-portal .portal-heading h1{font-size:22px}}@media(prefers-reduced-motion:reduce){.mini-scroll>section,.mini-scroll>.mini-person,.mini-profile,.mini-list,.mini-scroll,.web-portal .portal-main{animation:none}}.design-review{max-width:1200px;margin:auto;padding:24px;color:#23364d}.design-review header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:24px}.design-review h1{font-size:32px}.design-review a{color:#166eaa}.design-intro{padding:24px;background:#edf5fc;border-radius:12px;margin:24px 0;line-height:1.8}.design-decisions{background:#fff;border:1px solid #dce6ef;padding:24px;border-radius:12px}.design-decisions h2{font-size:24px}.design-decisions p{margin:16px 0;font-size:16px}.design-filters{display:flex;gap:24px;align-items:end;flex-wrap:wrap;padding:24px 0}.design-filters label{display:flex;flex-direction:column;gap:8px}.design-filters select,.design-filters input{font:inherit;padding:8px 16px;background:#fff;border:1px solid #aebdca;border-radius:8px;min-height:48px}.design-features{display:flex;flex-direction:column;gap:16px}.design-features details{background:#fff;border:1px solid #dce5ee;border-radius:12px;overflow:hidden}.design-features summary{cursor:pointer;display:flex;align-items:center;gap:16px;padding:24px;flex-wrap:wrap}.design-features summary:hover{background:#f3f8fc}.design-features summary:before{content:"＋";color:#2784bc}.design-features details[open] summary:before{content:"−"}.feature-id{color:#52738d;font-size:14px;width:48px}.feature-clients{color:#6b7e8d;font-size:14px}.feature-status{margin-left:auto;padding:0 8px;border-radius:8px;background:#edf0f3;color:#586c7c;font-size:14px}.feature-status.partial{background:#fff2d4;color:#88601c}.feature-detail{padding:0 24px 24px}.feature-detail dl{display:grid;gap:8px 16px;margin:0}.feature-detail dt{font-weight:600;color:#49677e}.feature-detail dd{margin:0 0 16px;line-height:1.8}@media(min-width:768px){.feature-detail dl{grid-template-columns:128px 1fr}.feature-detail dd{margin:0}.feature-detail dt,.feature-detail dd{padding:8px 0;border-top:1px solid #edf0f5}}
