:root{--ink:#193d30;--muted:#626d65;--green:#285b42;--sage:#e7eee7;--paper:#f6f5ee;--white:#fffef9;--line:#d5dfd5;--amber:#83511c;--amber-bg:#fff0d5;--purple:#7542a5}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.7 system-ui,-apple-system,"Segoe UI","Microsoft YaHei",sans-serif}button,input,select,textarea{font:inherit;color:inherit}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.55;cursor:wait}a{color:var(--green);text-underline-offset:4px}h1,h2,h3,p{margin:0}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #b48244;outline-offset:3px}[hidden]{display:none!important}.shell{max-width:1200px;margin:auto;padding:30px 40px}.masthead{display:flex;justify-content:space-between;align-items:center;gap:16px;padding-bottom:20px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-weight:750;letter-spacing:.035em}.logo{background:var(--green);color:var(--white);border-radius:12px;padding:5px 12px;font-size:21px}.local-label{font-size:12px;color:var(--muted)}.hero{display:grid;grid-template-columns:1fr 300px;gap:50px;align-items:center;margin:44px 0 32px}.eyebrow{font-size:12px;letter-spacing:.08em;color:var(--green);font-weight:650}h1{font-size:44px;line-height:1.3;letter-spacing:-.04em;margin:12px 0 14px}h1 span{color:#6b8865}.hero-text{max-width:570px;color:var(--muted)}.hero-facts{border-left:2px solid var(--green);padding:8px 0 8px 20px}.hero-facts strong{font-size:19px}.hero-facts p{font-size:12px;color:var(--muted);margin:9px 0 12px}.hero-facts a{font-size:12px}.tabs{display:flex;gap:5px;background:var(--sage);padding:5px;border-radius:14px;max-width:520px}.tabs button{flex:1;border:0;border-radius:10px;background:transparent;min-height:48px;padding:8px 12px;font-size:14px;color:var(--muted)}.tabs button[aria-current=page]{background:var(--white);color:var(--green);font-weight:700}.panel{margin-top:22px}.work-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;align-items:start}.box{background:var(--white);border:1px solid var(--line);border-radius:20px;padding:23px}.section-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:16px}.section-head h2{font-size:20px;line-height:1.5}.section-head>span{font-size:11px;color:var(--muted)}label{display:block;font-size:12px;color:var(--muted);margin:13px 0 5px}input:not([type=checkbox]),select,textarea{width:100%;min-width:0;border:1px solid #b6c5b8;border-radius:10px;padding:10px 11px;background:#fffefb;min-height:44px}input[type=file]{font-size:12px}textarea{resize:vertical;line-height:1.7}.hint{font-size:12px;line-height:1.8;color:var(--muted);margin:9px 0}.actions{display:flex;flex-wrap:wrap;gap:8px;margin:15px 0}.primary,.secondary,.text-button{border:1px solid var(--green);min-height:44px;border-radius:11px;padding:9px 15px;font-size:13px}.primary{background:var(--green);color:white;font-weight:650}.secondary{background:transparent;color:var(--green)}.text-button{border-color:transparent;background:transparent;text-decoration:underline;text-underline-offset:4px;padding:4px;font-size:12px}.wide{width:100%;margin-top:16px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 13px}.form-grid>div{min-width:0}.check{display:flex;align-items:start;gap:9px;font-size:12px;color:var(--ink);padding:6px 0}.check input{width:18px;height:18px;flex-shrink:0;margin-top:3px;accent-color:var(--green)}details{margin-top:18px}summary{cursor:pointer;font-size:13px;color:var(--green);min-height:32px}.basket-lines{display:grid;gap:8px;margin-top:16px}.basket-line{display:grid;grid-template-columns:minmax(0,1fr) 90px 28px 36px;gap:7px;align-items:center}.basket-line select,.basket-line input{font-size:12px;padding:9px 7px}.basket-line .unit{font-size:11px;color:var(--muted)}.remove{border:1px solid var(--line);border-radius:9px;background:var(--sage);min-height:40px;font-size:18px}.empty{border:1px dashed #afbfaf;border-radius:20px;padding:35px 24px;text-align:center}.empty strong{display:block;font-size:18px}.empty p{font-size:13px;color:var(--muted);margin:12px 0 19px}.status{font-size:13px;color:var(--green);min-height:20px;margin-top:10px}.error{color:#a23d2c;background:#fff0e9;padding:10px 13px;font-size:12px;border-radius:10px;margin-top:12px;white-space:pre-line}.demo-banner{background:var(--amber-bg);border:1px solid #d6ba8c;color:var(--amber);border-radius:12px;font-size:13px;padding:13px 16px;margin-top:18px}.demo-banner button{background:transparent;color:inherit;border:0;text-decoration:underline;min-height:36px;margin-left:6px}.plan{border:1px solid var(--line);border-radius:20px;background:var(--white);padding:20px;margin-bottom:14px}.plan.best{border:2px solid var(--green)}.plan .tag{display:inline-block;font-size:11px;background:var(--sage);color:var(--green);padding:3px 8px;border-radius:5px;margin-bottom:10px}.plan h3{font-size:17px}.plan-total{font-size:30px;font-weight:750;letter-spacing:-.025em;margin:8px 0}.plan-total small{font-size:11px;font-weight:400;letter-spacing:0;color:var(--muted)}.plan .meta{font-size:12px;color:var(--muted)}.plan ul{margin:14px 0 0;padding:0;list-style:none}.plan li{padding:11px 0;border-top:1px solid var(--line);font-size:12px}.plan li strong{display:block}.price-line{display:flex;justify-content:space-between;gap:8px}.warning{font-size:12px;background:var(--amber-bg);color:var(--amber);border-radius:10px;padding:11px;margin:12px 0}.records{margin-top:24px}.record{border:1px solid var(--line);border-radius:15px;padding:17px;background:var(--white);margin-bottom:10px}.record h3{font-size:15px}.record p{font-size:12px;color:var(--muted);overflow-wrap:anywhere}.record .record-price{font-size:20px;font-weight:700;color:var(--ink)}.record .actions{margin-bottom:0}.record-badge{display:inline-block;font-size:10px;color:var(--amber);background:var(--amber-bg);padding:2px 7px;border-radius:5px;margin-bottom:7px}.record-badge.ready{background:var(--sage);color:var(--green)}#photo-preview{max-width:100%;max-height:280px;display:block;border-radius:10px;margin:13px auto;object-fit:contain}#photo-area{padding:10px;border:1px solid var(--line);border-radius:13px;margin-top:12px}.source{border-top:1px solid var(--line);padding:12px 0}.source a{font-size:13px}.source p{font-size:12px;color:var(--muted)}.store-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin:20px 0}.store-card{background:var(--white);border:1px solid var(--line);border-radius:18px;padding:18px}.store-card h3{font-size:16px;overflow-wrap:anywhere}.store-card p{font-size:12px;color:var(--muted)}.store-card label{font-size:11px}.route-text{font-size:13px;padding:15px;border-left:3px solid var(--purple);background:var(--white);border-radius:0 12px 12px 0;line-height:2}.form-end{display:flex;align-items:end;padding-top:16px}footer{font-size:11px;color:var(--muted);border-top:1px solid var(--line);margin:38px 0 15px;padding-top:19px;display:grid;gap:8px}dialog{width:min(640px,calc(100% - 26px));max-height:90vh;padding:22px;border:1px solid var(--line);border-radius:20px;background:var(--white);color:var(--ink);overflow:auto}dialog::backdrop{background:#132d2280}dialog img{max-width:100%;max-height:65vh;object-fit:contain}dialog pre{white-space:pre-wrap;overflow-wrap:anywhere;font:13px/1.8 inherit}.comparison-note{font-size:12px;color:var(--muted);margin-bottom:15px}.partial-title{font-size:16px;margin:22px 0 12px}.partial{opacity:.9}.partial .plan-total{font-size:24px}.missing{color:var(--amber);font-size:12px;margin:8px 0}
@media(max-width:900px){.shell{padding:24px}.hero{grid-template-columns:1fr 260px;gap:25px}.store-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.work-grid{gap:18px}.box{padding:19px}}
.market-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.market-grid .record{margin:0;min-width:0}.market-grid a,.market-coverage a{overflow-wrap:anywhere}.market-filters{margin:16px 0}.market-filters label{margin-top:0}.market-filters>div{margin-bottom:10px}
@media(max-width:900px){.market-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.market-grid{grid-template-columns:1fr}.tabs button{font-size:12px}}
@media(max-width:680px){.shell{padding:18px 16px}.masthead{gap:9px}.local-label{font-size:10px;max-width:112px;text-align:right}.brand{font-size:13px}.logo{font-size:18px;padding:4px 9px}.hero{grid-template-columns:1fr;gap:20px;margin:28px 0 22px}h1{font-size:34px}.hero-text{font-size:13px}.hero-facts{padding:5px 0 5px 14px}.hero-facts strong{font-size:16px}.hero-facts p{margin:5px 0}.hero-facts a{display:inline-block;min-height:34px}.work-grid{grid-template-columns:1fr}.section-head h2{font-size:18px}.section-head>span{max-width:100px;text-align:right}.store-grid{grid-template-columns:1fr}.box{padding:18px}.tabs{width:100%;max-width:none}.tabs button{font-size:13px;padding:8px 5px}.result-area{margin-top:8px}.basket-line{grid-template-columns:minmax(0,1fr) 72px 23px 32px;gap:5px}.form-grid{gap:0 9px}.plan{padding:18px}.plan-total{font-size:27px}.demo-banner{font-size:12px}.hero-facts p{font-size:11px}}
.connection-status{font-size:12px;color:var(--muted);margin:12px 2px 0;overflow-wrap:anywhere}.connection-status.offline{background:var(--amber-bg);color:var(--amber);border-radius:10px;padding:10px 13px}.update-notice{display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid var(--line);background:var(--sage);border-radius:12px;padding:13px 16px;margin-top:12px;font-size:12px}.update-notice button{flex-shrink:0}.account-grid h3,.migration-box h3{font-size:17px}.account-user{font-size:14px;font-weight:650;margin-top:14px;overflow-wrap:anywhere}.sync-status{font-size:13px;border-left:3px solid var(--green);padding:10px 13px;background:var(--sage);border-radius:0 10px 10px 0;margin:12px 0;white-space:pre-line;overflow-wrap:anywhere}.conflict-list:empty{display:none}.conflict-list{display:grid;gap:12px;margin-top:18px}.conflict-list>div,.conflict-list>article{border:1px solid #d6ba8c;border-radius:12px;padding:13px;background:var(--amber-bg);font-size:13px;overflow-wrap:anywhere}.migration-box{margin-top:22px}.migration-actions{display:flex;align-items:end;flex-wrap:wrap;gap:14px}.migration-actions>div{flex:1;min-width:220px}.import-preview{border:1px solid var(--line);border-radius:12px;padding:15px;margin-top:16px;font-size:13px;white-space:pre-line;overflow-wrap:anywhere}.account-grid .actions{gap:8px}.account-grid .actions button{flex-grow:1}.tabs{max-width:680px;gap:8px}.tabs button{min-width:0}.remove,summary,.demo-banner button{min-height:44px}.basket-line{grid-template-columns:minmax(0,1fr) 90px 28px 44px;gap:8px}.basket-line .remove{min-width:44px}.store-card a,.source>a{display:inline-flex;align-items:center;min-height:44px}main,.panel,.box,.result-area{min-width:0}input:not([type=checkbox]),select,textarea{font-size:16px}.check{align-items:center;min-height:44px;cursor:pointer}.check input{margin-top:0}.check input:focus-visible{outline-offset:5px}.record a{overflow-wrap:anywhere}.conflict-list button{min-height:44px;border:1px solid var(--green);border-radius:10px;padding:8px 12px;background:var(--white);margin-top:10px}
@media(max-width:680px){.tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.tabs button{font-size:12px;padding:8px 4px;min-height:44px}.basket-line{grid-template-columns:minmax(0,1fr) 68px 22px 44px;gap:8px}.basket-line select,.basket-line input{font-size:16px;padding:9px 6px}.section-head{flex-wrap:wrap}.section-head>span{max-width:none;text-align:left}.update-notice{align-items:start;flex-direction:column;gap:8px}.migration-actions{align-items:stretch}.migration-actions>div{min-width:0;flex-basis:100%}.migration-actions>button{width:100%}.account-grid .actions button{flex-basis:100%}.price-line{flex-wrap:wrap}.price-line span{overflow-wrap:anywhere}.form-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0 12px}.form-grid input,.form-grid select{padding-left:8px;padding-right:8px}.form-grid input[type=date],.form-grid input[type=time]{min-width:0;max-width:100%}input[type=file]{font-size:16px;max-width:100%;overflow:hidden}.tabs button:focus-visible{outline-offset:1px}}
@media(max-width:380px){.shell{padding:16px 12px}.box{padding:15px}.basket-line{grid-template-columns:minmax(0,1fr) 64px 18px 44px;gap:8px}.brand{font-size:12px}.local-label{max-width:100px}.form-grid{gap:0 9px}}
.brand,.record a{min-height:44px}.record a{display:inline-flex;align-items:center;max-width:100%}
