:root{--bg: #f7f7f5;--card: #ffffff;--ink: #2b2b28;--muted: #6b6b66;--border: #e4e2dd;--accent: #b5651d}*{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif;background:var(--bg);color:var(--ink)}.app-shell{max-width:1200px;margin:0 auto;padding:24px}.tabs{display:flex;gap:4px;margin-bottom:20px;border-bottom:1px solid var(--border)}.tab-btn{background:none;border:none;padding:10px 16px;cursor:pointer;font-size:14px;font-weight:600;color:var(--muted);border-bottom:2px solid transparent}.tab-btn.active{color:var(--accent);border-bottom-color:var(--accent)}.card{background:var(--card);border:1px solid var(--border);border-radius:10px;padding:18px 20px;margin-bottom:20px}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:16px}.form-group{display:flex;flex-direction:column}.form-group label{text-transform:uppercase;font-size:11px;letter-spacing:.05em;font-weight:700;color:var(--muted);margin-bottom:6px;display:block}.form-control{background-color:var(--card);border:1px solid var(--border);border-radius:6px;padding:10px 12px;font-size:14px;color:var(--ink);outline:none;font-family:inherit;transition:border-color .2s,box-shadow .2s;width:100%}.form-control:focus{border-color:var(--accent);box-shadow:0 0 0 3px #b5651d26}.form-control:disabled{background-color:var(--bg);color:var(--muted);cursor:not-allowed}.segmented-control{display:inline-flex;border:1px solid var(--border);border-radius:6px;overflow:hidden;background:var(--bg);padding:2px;margin-bottom:6px;align-self:flex-start}.segmented-btn{border:none;background:none;padding:6px 12px;font-size:12px;font-weight:600;color:var(--muted);border-radius:4px;cursor:pointer;transition:background .15s,color .15s}.segmented-btn.active{background:var(--card);color:var(--accent);box-shadow:0 1px 3px #0000000d}.btn-primary{background-color:var(--accent);color:#fff;border:none;padding:12px 24px;font-size:14px;font-weight:600;border-radius:6px;cursor:pointer;font-family:inherit;transition:opacity .2s,transform .1s}.btn-primary:hover{opacity:.9}.btn-primary:active{transform:scale(.98)}.btn-primary:disabled{background-color:var(--border);color:var(--muted);cursor:not-allowed;opacity:1}.alert{padding:10px 14px;border-radius:6px;font-size:13px;margin-bottom:16px;display:flex;align-items:center;gap:8px}.alert-error{background-color:#fdf3f2;border:1px solid #f8d7da;color:#b02a37}.alert-success{background-color:#f4faf6;border:1px solid #d1e7dd;color:#0f5132}.table-container{overflow-x:auto;margin-top:15px;border:1px solid var(--border);border-radius:8px}.table{width:100%;border-collapse:collapse;text-align:left;font-size:13.5px}.table th{font-weight:700;color:var(--muted);text-transform:uppercase;font-size:10.5px;letter-spacing:.05em;padding:10px 12px;border-bottom:2px solid var(--border);background-color:var(--bg)}.table td{padding:10px 12px;border-bottom:1px solid var(--border);color:var(--ink);vertical-align:middle}.table tr:last-child td{border-bottom:none}.table tr:hover{background-color:#faf9f6}.badge{display:inline-block;padding:3px 8px;font-size:10px;font-weight:700;border-radius:12px;text-transform:uppercase;letter-spacing:.02em}.badge-manual{background-color:var(--border);color:var(--muted)}.badge-import{background-color:#e8f0fe;color:#1a73e8}.badge-capture{background-color:#e6f4ea;color:#137333}.btn-delete{background:none;border:none;color:#c92a2a;cursor:pointer;font-size:12px;font-weight:600;padding:4px 8px;border-radius:4px;transition:background-color .2s,color .2s;font-family:inherit}.btn-delete:hover{background-color:#ffe3e3}.projects-layout{display:flex;gap:24px;align-items:flex-start}.projects-sidebar{width:300px;flex-shrink:0;display:flex;flex-direction:column;gap:16px;border-right:1px solid var(--border);padding-right:20px}.projects-content{flex:1;min-width:0}.project-list{display:flex;flex-direction:column;gap:8px;overflow-y:auto;max-height:550px}.project-item{padding:12px 14px;border:1px solid var(--border);border-radius:8px;cursor:pointer;background:var(--card);text-align:left;transition:border-color .2s,background-color .2s,box-shadow .2s;width:100%}.project-item:hover{border-color:var(--accent);background-color:#faf9f6}.project-item.active{border-color:var(--accent);background-color:#fcf6f0;box-shadow:inset 3px 0 0 var(--accent)}.project-item-name{font-weight:600;font-size:14px;color:var(--ink);margin-bottom:4px}.project-item-meta{font-size:11px;color:var(--muted);display:flex;justify-content:space-between;align-items:center}.project-detail-header{border-bottom:1px solid var(--border);padding-bottom:16px;margin-bottom:20px}.project-detail-meta{display:flex;gap:16px;margin-top:8px;font-size:13px;color:var(--muted)}.project-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:16px;margin-bottom:24px}.metric-card{background:var(--bg);border:1px solid var(--border);padding:12px 16px;border-radius:8px}.metric-value{font-size:24px;font-weight:700;color:var(--accent);margin-bottom:2px}.metric-label{font-size:10px;text-transform:uppercase;font-weight:700;color:var(--muted);letter-spacing:.05em}.feed-title{font-size:14px;text-transform:uppercase;font-weight:700;color:var(--muted);letter-spacing:.05em;margin-bottom:12px;margin-top:24px}.feed-list{display:flex;flex-direction:column;gap:12px}.feed-item{padding:12px 14px;border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:0 8px 8px 0;background:var(--card);font-size:13px;line-height:1.4}.feed-item-header{display:flex;justify-content:space-between;font-weight:600;color:var(--ink);margin-bottom:6px;font-size:11.5px;border-bottom:1px solid var(--bg);padding-bottom:4px}.feed-item-notes{color:var(--ink)}.btn-secondary{background-color:var(--card);border:1px solid var(--accent);color:var(--accent);padding:10px 20px;font-size:13px;font-weight:600;border-radius:6px;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;transition:background-color .2s,color .2s;font-family:inherit}.btn-secondary:hover{background-color:var(--accent);color:#fff}.report-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin-top:24px}.breakdown-card{background:var(--card);border:1px solid var(--border);padding:18px 20px;border-radius:8px;display:flex;flex-direction:column;gap:16px}.breakdown-title{font-size:11px;text-transform:uppercase;font-weight:700;color:var(--muted);letter-spacing:.05em;border-bottom:1px solid var(--border);padding-bottom:8px;margin:0}.bar-row{display:flex;flex-direction:column;gap:5px;margin-bottom:12px}.bar-row:last-child{margin-bottom:0}.bar-label{display:flex;justify-content:space-between;font-size:12.5px;color:var(--ink)}.bar-outer{background-color:var(--border);height:6px;border-radius:3px;overflow:hidden;width:100%}.bar-inner{background-color:var(--accent);height:100%;border-radius:3px;transition:width .4s ease-out}.phone-row{background:var(--card);border:1px solid var(--border);border-radius:8px;padding:14px 16px;margin-bottom:12px;transition:border-color .2s,box-shadow .2s}.phone-row:hover{border-color:var(--accent)}.phone-row-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--bg);padding-bottom:8px;margin-bottom:10px}.phone-row-body{display:flex;flex-wrap:wrap;gap:16px;font-size:13px;color:var(--muted)}.phone-assign-panel{background-color:var(--bg);border:1px solid var(--border);border-radius:6px;padding:14px;margin-top:12px}.area-list-row{display:flex;align-items:center;gap:8px;margin-bottom:10px}.btn-toggle-active{background:none;border:1px solid var(--border);border-radius:6px;padding:8px 12px;font-size:12px;font-weight:600;cursor:pointer;transition:border-color .15s,background-color .15s,color .15s;font-family:inherit;white-space:nowrap}.btn-toggle-active.active{border-color:#d1e7dd;background-color:#f4faf6;color:#0f5132}.btn-toggle-active.inactive{border-color:#f8d7da;background-color:#fdf3f2;color:#b02a37}.color-dot{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:8px;flex-shrink:0;vertical-align:middle}.color-picker-palette{display:inline-flex;gap:6px;align-items:center;margin-top:4px}.color-circle{width:22px;height:22px;border-radius:50%;border:2px solid transparent;cursor:pointer;padding:0;transition:transform .15s,border-color .15s;box-shadow:inset 0 0 2px #00000026}.color-circle:hover{transform:scale(1.15)}.color-circle.active{border-color:var(--ink);box-shadow:inset 0 0 2px #00000026,0 0 0 2px var(--card),0 0 0 3px var(--border)}
