*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%;background:#f5f7f5}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif}.app-shell{max-width:720px;margin:0 auto;min-height:100vh;background:#fff;box-shadow:0 0 24px #0000000f}.page-content{padding:12px 12px 88px}.tab-panel{display:none}.tab-panel-active{display:block}.plant-card{margin-bottom:12px}.plant-cover{width:100%;height:180px;object-fit:cover;border-radius:8px;background:#f0f0f0}.plant-cover-empty{display:flex;align-items:center;justify-content:center;color:#999;font-size:14px}.preview-image{width:100%;max-height:260px;object-fit:contain;border-radius:8px;background:#fafafa}.match-score{font-size:20px;font-weight:700;color:#389e0d}.identify-cover-wrap{margin-bottom:4px}.identify-inline-track{display:flex;width:100%;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;overscroll-behavior-x:contain;border-radius:8px}.identify-inline-track::-webkit-scrollbar{display:none}.identify-inline-slide{position:relative;flex:0 0 100%;width:100%;scroll-snap-align:center;scroll-snap-stop:always;padding:0;border:none;background:transparent;cursor:pointer}.identify-cover-button{position:relative;display:block;width:100%;padding:0;border:none;background:transparent;cursor:pointer}.identify-cover-wrap .plant-cover{width:100%;height:180px;object-fit:cover;border-radius:8px;background:#f0f0f0;display:block}.identify-cover-mask{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;border-radius:8px;background:#00000047;color:#fff;font-size:14px;opacity:0;transition:opacity .2s ease}.identify-cover-button:active .identify-cover-mask,.identify-cover-button:hover .identify-cover-mask,.identify-inline-slide:active .identify-cover-mask,.identify-inline-slide:hover .identify-cover-mask{opacity:1}.identify-cover-hint{font-size:12px;color:#888;text-align:center;margin-top:6px}.identify-preview{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1100;background:#000000f0;touch-action:pan-x}.identify-preview-track{display:flex;width:100%;height:100%;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;overscroll-behavior-x:contain}.identify-preview-track::-webkit-scrollbar{display:none}.identify-preview-slide{flex:0 0 100%;width:100%;height:100%;scroll-snap-align:center;scroll-snap-stop:always;display:flex;align-items:center;justify-content:center;padding:48px 12px 32px;box-sizing:border-box}.identify-preview-slide img{max-width:100%;max-height:100%;object-fit:contain;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.identify-preview-close{position:absolute;top:12px;right:12px;z-index:2;width:40px;height:40px;border:none;border-radius:999px;background:#ffffff24;color:#fff;font-size:18px;cursor:pointer}.identify-preview-counter{position:absolute;top:18px;left:50%;transform:translate(-50%);z-index:2;padding:4px 12px;border-radius:999px;background:#00000073;color:#fff;font-size:13px}.identify-preview-nav{position:absolute;top:50%;transform:translateY(-50%);z-index:2;width:40px;height:40px;border:none;border-radius:999px;background:#ffffff24;color:#fff;font-size:16px;cursor:pointer}.identify-preview-nav:disabled{opacity:.35;cursor:default}.identify-preview-nav-prev{left:8px}.identify-preview-nav-next{right:8px}@media (max-width: 768px){.identify-preview-nav{display:none}.identify-preview-slide{padding-inline:0}}.advice-banner{margin-bottom:16px}.bottom-nav{position:fixed;left:50%;transform:translate(-50%);bottom:0;width:100%;max-width:720px;background:#fff;border-top:1px solid #f0f0f0;z-index:100}@media (min-width: 768px){.page-content{padding:16px 20px 96px}}.manage-table .ant-table-cell{vertical-align:top}.manage-table .ant-table-thead>tr>th,.manage-table .ant-table-tbody>tr>td{white-space:normal;word-break:break-word}.field-harvest-item{display:block!important;padding-inline:0!important}.field-harvest-item .ant-list-item-action{display:none}.field-harvest-record{width:100%}.field-harvest-gallery{width:100%;max-width:100%;margin-top:8px}.plant-card .identify-cover-wrap{margin-bottom:0}.plant-card .identify-cover-wrap .plant-cover{border-radius:0}
