:root{color-scheme:light dark;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.5;--bg: #f5f5f4;--surface: #ffffff;--border: #e7e5e4;--text: #1c1917;--muted: #78716c;--primary: #0b6e4f;--danger: #dc2626}@media(prefers-color-scheme:dark){:root{--bg: #1c1917;--surface: #262322;--border: #3a3532;--text: #e7e5e4;--muted: #a8a29e}}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text)}.login-shell{min-height:100vh;display:grid;place-items:center;padding:1rem}.login-card{width:340px;background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:1.5rem;display:grid;gap:.5rem}.login-card h1{font-size:1.1rem;margin:0 0 .5rem}.app-shell{display:grid;grid-template-columns:220px 1fr;min-height:100vh}.mobile-topbar,.sidebar-backdrop{display:none}.sidebar{background:var(--surface);border-right:1px solid var(--border);display:flex;flex-direction:column;padding:1rem .75rem}.brand{font-weight:700;padding:0 .5rem 1rem}.sidebar nav{display:grid;gap:2px;flex:1}.sidebar nav a{padding:.5rem .75rem;border-radius:8px;color:var(--text);text-decoration:none;font-size:.92rem}.sidebar nav a:hover{background:var(--bg)}.sidebar nav a.active{background:var(--primary);color:#fff}.sidebar-foot{border-top:1px solid var(--border);padding-top:.75rem;display:grid;gap:.5rem;font-size:.8rem}.sidebar-foot span{color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.content{padding:1.5rem;overflow:auto}.center-screen{min-height:100vh;display:grid;place-items:center}.panel{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:1.25rem;margin-bottom:1.25rem}.panel-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.panel-head h2{font-size:1.05rem;margin:0}.panel-subhead{font-size:.95rem;margin:1.5rem 0 .75rem;padding-top:1rem;border-top:1px solid var(--border)}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:.9rem}th,td{text-align:left;padding:.5rem .65rem;border-bottom:1px solid var(--border)}th{color:var(--muted);font-weight:600}tr.row-active{background:color-mix(in srgb,var(--primary) 10%,transparent)}tbody tr{cursor:default}.inline-form{display:flex;flex-wrap:wrap;gap:.75rem;align-items:flex-end;margin-bottom:1rem}.field{display:grid;gap:.25rem;font-size:.8rem;color:var(--muted)}.field input,.field select,.field textarea{font-size:.9rem;padding:.4rem .5rem;border:1px solid var(--border);border-radius:8px;background:var(--bg);color:var(--text);min-width:140px;font-family:inherit}.field textarea{width:100%;resize:vertical}.field-error{color:var(--danger)}.btn{border:1px solid transparent;border-radius:8px;padding:.45rem .9rem;font-size:.9rem;cursor:pointer}.btn-primary{background:var(--primary);color:#fff}.btn-ghost{background:transparent;border-color:var(--border);color:var(--text)}.btn-danger{background:var(--danger);color:#fff}.btn:disabled{opacity:.6;cursor:default}.muted{color:var(--muted);font-size:.85rem}.row-clickable{cursor:pointer}.row-clickable:hover{background:var(--bg-hover, rgba(0, 0, 0, .04))}.row-selected{background:var(--bg-hover, rgba(0, 0, 0, .06))}.client-portfolio{margin-top:1rem}.client-portfolio-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:.5rem;margin-bottom:.5rem}.error-text{color:var(--danger);font-size:.85rem}.ok-text{color:var(--primary);font-size:.85rem}.sample{background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:.6rem;font-size:.8rem;overflow-x:auto}.tag{font-size:.72rem;padding:.1rem .45rem;border-radius:999px;background:var(--border)}.tag-manual{background:#dbeafe;color:#1e40af}.tag-csv,.tag-done{background:#dcfce7;color:#166534}.tag-processing{background:#fef9c3;color:#854d0e}.tag-failed,.tag-rejected{background:#fee2e2;color:#991b1b}.tag-draft{background:var(--border);color:var(--muted)}.tag-scheduled,.tag-new{background:#fef9c3;color:#854d0e}.tag-published,.tag-converted{background:#dcfce7;color:#166534}.tag-archived{background:var(--border);color:var(--muted)}.tag-contacted{background:#dbeafe;color:#1e40af}.tag-qualified{background:#e0e7ff;color:#3730a3}.media-grid{display:flex;flex-wrap:wrap;gap:.75rem;margin:.5rem 0 1rem}.media-item{margin:0;display:grid;gap:4px;width:140px}.media-item img{width:140px;height:90px;object-fit:cover;border-radius:8px;border:1px solid var(--border)}.media-item .btn{font-size:.75rem;padding:.2rem .4rem}.media-item .tag{font-size:.68rem}.media-placeholder{width:140px;height:90px;display:grid;place-items:center;font-size:1.6rem;border-radius:8px;border:1px solid var(--border);background:var(--bg)}.funnel{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin-bottom:1rem}.funnel-total{font-weight:700}.prospect-detail{display:grid;gap:.6rem;padding:.75rem 0}.activity-log{margin:.25rem 0 0;padding-left:1rem;font-size:.85rem}.activity-log li{margin:.15rem 0}.totp-setup{display:grid;gap:.75rem;max-width:320px;margin-top:1rem}.batch-result{margin:1rem 0}.spinner{width:22px;height:22px;border:3px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:768px){.app-shell{display:block;grid-template-columns:none}.mobile-topbar{display:flex;align-items:center;gap:.75rem;position:sticky;top:0;z-index:20;padding:.75rem 1rem;padding-top:calc(.75rem + env(safe-area-inset-top,0px));background:var(--surface);border-bottom:1px solid var(--border)}.mobile-topbar .brand{padding:0;font-weight:700}.hamburger{display:grid;gap:4px;width:28px;padding:4px;background:none;border:none;cursor:pointer}.hamburger span{display:block;height:2px;background:var(--text);border-radius:1px}.sidebar-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;z-index:29}.sidebar{position:fixed;top:0;bottom:0;left:0;width:240px;max-width:80vw;z-index:30;padding-top:calc(1rem + env(safe-area-inset-top,0px));padding-bottom:calc(1rem + env(safe-area-inset-bottom,0px));transform:translate(-100%);transition:transform .2s ease;box-shadow:2px 0 12px #00000026}.sidebar.sidebar-open{transform:translate(0)}.sidebar-brand{display:none}.content{padding:1rem}.login-card{width:100%;max-width:340px}.panel{padding:1rem}.panel-head{flex-wrap:wrap;gap:.5rem}table{font-size:.82rem}th,td{padding:.4rem .5rem}}
