*,:before,:after{box-sizing:border-box}:root{--bg:#f7f3ea;--surface:#fffdf8;--text:#2b2418;--text-muted:#6b5f4d;--border:#e6dcc8;--primary:#c47a00;--primary-dark:#9a6000;--danger:#b42318;--shadow:0 8px 24px #2b241814;--radius:16px;--safe-bottom:env(safe-area-inset-bottom,0px);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5}html,body,#root{min-height:100%}body{background:radial-gradient(circle at top right, #c47a001f, transparent 40%), var(--bg);margin:0}button,input,select,textarea{font:inherit}img{max-width:100%;display:block}.app-shell{max-width:640px;min-height:100dvh;padding-bottom:calc(24px + var(--safe-bottom));margin:0 auto}.page{padding:16px}.header-actions{flex-direction:column;align-items:stretch;gap:8px;display:flex}.user-line{margin-top:4px;font-size:.85rem}.auth-page{max-width:420px;margin:0 auto;padding-top:32px}.auth-header{text-align:center;margin-bottom:24px}.auth-subtitle{margin:8px 0 0}.auth-card{gap:14px;display:grid}.auth-info{color:var(--primary-dark);margin:0;font-size:.92rem}.auth-dev-code{border:1px dashed var(--primary);color:var(--text);text-align:center;background:#fff8e6;border-radius:12px;margin:0;padding:12px;font-size:.95rem}.auth-dev-code strong{letter-spacing:.15em;font-variant-numeric:tabular-nums;font-size:1.4rem}.auth-email-hint{margin:0;font-size:.92rem}.auth-error{color:var(--danger);margin:0;font-size:.92rem}.auth-code-input{letter-spacing:.2em;text-align:center;font-variant-numeric:tabular-nums;font-size:1.4rem}.auth-footnote{text-align:center;color:var(--text-muted);margin-top:20px;font-size:.85rem}.page-header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:20px;display:flex}.page-header.compact{flex-direction:column;align-items:stretch}.page-header h1,.section-header h2{margin:0;font-size:1.5rem;line-height:1.2}.eyebrow{letter-spacing:.04em;text-transform:uppercase;color:var(--primary);margin:0 0 4px;font-size:.85rem;font-weight:600}.muted{color:var(--text-muted);margin:4px 0 0}.header-row{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:16px}.empty-state{text-align:center;color:var(--text-muted);padding:32px 16px}.empty-state.card{margin-top:12px}.empty-state.compact{padding:20px 16px}.empty-icon{margin-bottom:8px;font-size:2.5rem;display:block}.btn,.hive-card,.inspection-card{cursor:pointer;border:none;transition:transform .15s,background .15s}.btn:active,.hive-card:active,.inspection-card:active{transform:scale(.98)}.btn{border-radius:999px;padding:12px 18px;font-weight:600}.btn-primary{background:var(--primary);color:#fff}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{color:var(--text);background:#f1e7d4}.btn-danger-outline{color:var(--danger);background:0 0;border:1px solid #b4231859}.btn-back{color:var(--primary-dark);cursor:pointer;background:0 0;border:none;margin-bottom:8px;padding:0;font-weight:600}.btn-text{cursor:pointer;background:0 0;border:none;padding:0;font-size:.85rem}.btn-text.danger{color:var(--danger)}.hive-list,.inspection-list{gap:12px;margin:0;padding:0;list-style:none;display:grid}.hive-card,.inspection-card{text-align:left;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);width:100%;box-shadow:var(--shadow)}.hive-card-expanded{padding:0;overflow:hidden}.hive-card-header{text-align:left;cursor:pointer;background:0 0;border:none;justify-content:space-between;align-items:center;gap:12px;width:100%;padding:16px;display:flex}.hive-card-header:active{transform:scale(.99)}.hive-card-activity{border-top:1px solid var(--border);gap:12px;padding:12px 16px 16px;display:grid}.activity-block h3{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin:0 0 6px;font-size:.78rem}.activity-list{gap:4px;margin:0;padding:0;list-style:none;display:grid}.activity-list li{color:var(--text);font-size:.88rem}.activity-empty{margin:0;font-size:.88rem}.inspection-card{justify-content:space-between;align-items:center;gap:12px;padding:16px;display:flex}.hive-card h2,.inspection-card h3{margin:0;font-size:1.1rem}.hive-card-meta{flex-direction:column;align-items:flex-end;gap:8px;min-width:72px;display:flex}.chevron{color:var(--text-muted);font-size:1.4rem;line-height:1}.chip{color:var(--primary-dark);background:#f1e7d4;border-radius:999px;margin-top:8px;padding:4px 10px;font-size:.8rem;font-weight:600;display:inline-block}.info-card .info-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0;display:grid}.info-card dt,.detail-row dt{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin-bottom:2px;font-size:.75rem}.info-card dd,.detail-row dd{margin:0;font-weight:600}.notes-block{white-space:pre-wrap;margin:12px 0 0}.section-block{margin-top:24px}.section-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.form{gap:20px;display:grid}.form-section{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);gap:14px;padding:16px;display:grid}.form-section-title{margin:0;font-size:1rem}.form-field{gap:6px;display:grid}.form-label{font-size:.92rem;font-weight:600}.form-hint{color:var(--text-muted);font-size:.82rem}.input{border:1px solid var(--border);width:100%;color:var(--text);background:#fff;border-radius:12px;padding:12px 14px}.textarea{resize:vertical;min-height:88px}.checkbox-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.checkbox-field{align-items:center;gap:8px;font-size:.92rem;display:flex}.checkbox-field.standalone{margin-top:4px}.form-actions{gap:10px;display:grid}.form-actions.sticky{bottom:calc(12px + var(--safe-bottom));background:linear-gradient(to top, var(--bg) 70%, transparent);padding-top:8px;position:sticky}.photo-controls{grid-template-columns:1fr auto;gap:10px;display:grid}.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px;display:grid}.photo-card{border:1px solid var(--border);background:#fff;border-radius:12px;margin:0;overflow:hidden}.photo-card img{aspect-ratio:1;object-fit:cover;width:100%}.photo-card figcaption{justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;font-size:.82rem;display:flex}.detail-card h2{margin:0 0 12px;font-size:1rem}.detail-list{gap:10px;margin:0;display:grid}.detail-row{gap:2px;display:grid}@media (width>=480px){.page{padding:24px}.page-header h1{font-size:1.75rem}}.year-picker{color:var(--text-muted);align-items:center;gap:8px;margin-top:12px;font-size:.9rem;display:flex}.year-picker .input{width:auto;min-width:96px}.harvest-actions{flex-wrap:wrap;justify-content:flex-end}.harvest-kpi-grid,.harvest-money-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:14px;display:grid}.kpi-card,.money-card{gap:4px;display:grid}.kpi-card span,.money-card span{color:var(--text-muted);font-size:.85rem}.kpi-card strong,.money-card strong{font-size:1.35rem}.harvest-charts{gap:12px;margin-bottom:14px;display:grid}.harvest-chart-card h2{margin:0 0 12px;font-size:1rem}.harvest-bars{grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:10px;min-height:140px;display:grid}.harvest-bar-col{justify-items:center;gap:6px;display:grid}.harvest-bar-track{background:color-mix(in srgb, var(--border) 70%, white);border-radius:10px;align-items:flex-end;width:100%;max-width:48px;height:110px;display:flex;overflow:hidden}.harvest-bar-fill{border-radius:10px 10px 0 0;width:100%;min-height:4px}.bar-remaining{background:var(--primary)}.bar-sold{background:#2f6f4e}.bar-removed{background:#8a6a3b}.harvest-bar-col strong{font-size:1.05rem}.harvest-bar-col span{color:var(--text-muted);text-align:center;font-size:.78rem}.harvest-timeline{width:100%;height:auto}.timeline-line{fill:none;stroke-width:2.5px;stroke-linecap:round;stroke-linejoin:round}.timeline-line.harvested{stroke:var(--primary)}.timeline-line.sold{stroke:#2f6f4e}.timeline-line.removed{stroke:#8a6a3b}.timeline-legend{color:var(--text-muted);flex-wrap:wrap;gap:12px;margin-top:8px;font-size:.82rem;display:flex}.timeline-legend .swatch{border-radius:999px;width:10px;height:10px;margin-right:4px;display:inline-block}.swatch.harvested{background:var(--primary)}.swatch.sold{background:#2f6f4e}.swatch.removed{background:#8a6a3b}.stock-table-wrap{overflow-x:auto}.stock-table{border-collapse:collapse;width:100%;font-size:.92rem}.stock-table th,.stock-table td{text-align:left;border-bottom:1px solid var(--border);padding:8px 6px}.stock-table th{color:var(--text-muted);font-weight:600}.hive-multiselect,.sale-line{gap:8px;display:grid}.check-row{align-items:center;gap:8px;font-size:.95rem;display:flex}.form-error{color:#9b1c1c;margin:0 0 12px;font-weight:600}.btn-danger{color:#9b1c1c;background:0 0;border:1px solid #9b1c1c;margin-top:8px}.section-header{justify-content:space-between;align-items:center;margin:18px 0 10px;display:flex}.section-header h2{margin:0}.list{gap:10px;display:grid}.team-member-list{gap:10px;margin:12px 0 0;padding:0;list-style:none;display:grid}.team-member-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.team-invite-code{letter-spacing:.08em;margin:12px 0;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:1.35rem;font-weight:700}
