:root{color-scheme:light;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;--ink: #1c2420;--muted: #6b756f;--line: #dfe4e0;--bg: #f6f8f6;--surface: #ffffff;--accent: #3f6f53;--accent-soft: #e6efe9;--danger: #b3261e;--radius: 12px}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink)}h1,h2{margin:0}button{cursor:pointer;border:1px solid var(--line);background:var(--surface);border-radius:8px;padding:8px 14px;font:inherit;color:inherit}button:hover{border-color:var(--accent)}button:disabled{cursor:not-allowed;opacity:.55}button.primary{background:var(--accent);color:#fff;border-color:var(--accent)}input,select{padding:9px 11px;border:1px solid var(--line);border-radius:8px;font:inherit;background:var(--surface);color:inherit}input:focus,select:focus,button:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.gate{max-width:360px;margin:12vh auto;display:flex;flex-direction:column;gap:10px;padding:28px;background:var(--surface);border:1px solid var(--line);border-radius:14px}.gate h1{margin-bottom:8px;font-size:22px}.gate label{font-size:13px;color:var(--muted)}.gate button{background:var(--accent);color:#fff;border-color:var(--accent)}.shell{display:grid;grid-template-columns:1fr;min-height:100vh}@media (min-width: 860px){.shell{grid-template-columns:240px 1fr}}.sidebar{position:fixed;top:0;left:0;bottom:0;width:260px;max-width:84vw;background:var(--surface);border-right:1px solid var(--line);padding:18px 14px;overflow-y:auto;transform:translate(-100%);transition:transform .22s ease;z-index:60}.sidebar.open{transform:translate(0)}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f141173;z-index:55;animation:fade .18s ease}@keyframes fade{0%{opacity:0}}.sidebar-head{display:flex;align-items:center;justify-content:space-between}.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;flex-shrink:0}.header-left{display:flex;align-items:center;gap:10px;min-width:0}.header-left h1{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.brand{font-weight:600;font-size:18px;padding:6px 10px 16px}.nav{display:flex;flex-direction:column;gap:2px}.nav-item{display:flex;align-items:center;gap:10px;padding:10px;border-radius:9px;color:var(--ink);text-decoration:none;font-size:14px}.nav-item:hover{background:var(--bg)}.nav-item.active{background:var(--accent-soft);color:var(--accent);font-weight:500}.nav-icon{display:inline-flex;color:var(--muted)}.nav-item.active .nav-icon{color:var(--accent)}@media (min-width: 860px){.sidebar{position:static;width:auto;max-width:none;transform:none;z-index:auto}.close-menu,.burger{display:none}}.main{display:flex;flex-direction:column;min-width:0}.header{display:flex;align-items:center;justify-content:space-between;padding:18px 24px;border-bottom:1px solid var(--line);background:var(--surface)}.header h1{font-size:20px}.content{padding:24px}.stack{display:flex;flex-direction:column;gap:18px}.toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.layout{display:grid;grid-template-columns:1fr;gap:18px}@media (min-width: 1000px){.layout:has(.detail){grid-template-columns:1.6fr 1fr;align-items:start}}.cards{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}@media (min-width: 760px){.cards{grid-template-columns:repeat(4,1fr)}}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:16px}.card-label{margin:0;color:var(--muted);font-size:13px}.card-value{margin:6px 0 2px;font-size:26px;font-weight:600}.card-hint{margin:0;color:var(--muted);font-size:12px}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:16px 18px}.panel h2,.panel summary{font-size:16px;margin-bottom:12px}.panel summary{cursor:pointer;list-style:none}.panel summary::-webkit-details-marker{display:none}.panel summary:before{content:"▸";display:inline-block;width:14px;color:var(--muted);transition:transform .15s ease}.panel[open]>summary:before{transform:rotate(90deg)}.panel:not([open])>summary{margin-bottom:0}.category{display:flex;flex-direction:column;gap:12px}.category-head{display:flex;align-items:baseline;gap:10px;padding-top:8px}.category-head h2{font-size:15px;letter-spacing:.02em;text-transform:uppercase;color:var(--muted)}.category-icon{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:8px;background:var(--accent-soft);color:var(--accent);flex-shrink:0;font-size:15px;font-weight:600}.count{font-size:12px;color:var(--muted);margin-left:auto}.category-panels{display:flex;flex-direction:column;gap:12px}.fields{display:grid;grid-template-columns:1fr;gap:12px;margin-bottom:16px}.fields.fields-compact{grid-template-columns:repeat(2,1fr)}@media (min-width: 620px){.fields{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1100px){.fields.wide-3{grid-template-columns:repeat(3,1fr)}}.field{display:flex;flex-direction:column;gap:5px;min-width:0}.field input,.field select{min-width:0;width:100%}.field-label{font-size:13px;color:var(--muted)}.counter-group{display:flex;flex-direction:column;gap:8px}.counter-group-label{font-size:13px;color:var(--muted)}.counter-ctrl{display:flex;align-items:center;gap:10px}.counter-input{display:flex;align-items:center;gap:3px;min-width:44px;justify-content:center}.counter-input input{width:52px;min-width:0;border:none;background:transparent;padding:0;text-align:center;font-size:15px;font-variant-numeric:tabular-nums;-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}.counter-input input::-webkit-inner-spin-button,.counter-input input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.counter-input input:focus{outline:none;color:var(--accent)}.unit-chip{color:var(--muted);font-size:14px}.step-btn{width:32px;height:32px;border-radius:50%;padding:0;display:inline-flex;align-items:center;justify-content:center;background:var(--surface);border:1.5px solid var(--line);color:var(--accent);flex-shrink:0;transition:background .15s,border-color .15s,transform .1s}.step-btn svg{width:14px;height:14px}.step-btn:hover{background:var(--accent-soft);border-color:var(--accent)}.step-btn:active{transform:scale(.92)}.clean-type-card{display:flex;flex-direction:column;gap:10px;background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:14px}.clean-type-name{font-size:15px;font-weight:600;text-transform:capitalize}.field-rows{display:flex;flex-direction:column;gap:8px}.field-row{display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:10px 12px}.field-row .field-label{font-size:14px;color:var(--ink)}.checkbox{width:20px;height:20px;accent-color:var(--accent);cursor:pointer;flex-shrink:0}.num{max-width:160px}.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:var(--radius)}.leads{width:100%;min-width:560px;border-collapse:collapse;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.leads th,.leads td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--line);font-size:14px}.leads th{background:#eef2ef;color:var(--muted);font-weight:500}.leads tbody tr{cursor:pointer}.leads tbody tr:hover{background:#f2f6f3}.leads tr.selected{background:var(--accent-soft)}.detail{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:16px 18px}.detail h2{font-size:18px;margin-bottom:12px}.row{display:flex;justify-content:space-between;gap:16px;margin:6px 0;font-size:14px}.row-label{color:var(--muted)}.row-value{text-align:right;word-break:break-word}.badge{display:inline-block;padding:3px 9px;border-radius:999px;font-size:12px;font-weight:500}.badge-new{background:#e3eefc;color:#1f5bb5}.badge-contacted{background:#fdf0d9;color:#9a6b12}.badge-scheduled{background:#e7e3fb;color:#5a45b8}.badge-done{background:var(--accent-soft);color:var(--accent)}.badge-lost{background:#f0e1e0;color:#97433d}.toggle{width:42px;height:24px;border-radius:999px;border:1px solid var(--line);background:#e9ece9;padding:0;position:relative}.toggle.on{background:var(--accent);border-color:var(--accent)}.toggle-knob{position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:#fff;transition:transform .15s ease}.toggle.on .toggle-knob{transform:translate(18px)}.review-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.stars{margin-left:8px;color:#d8a200}.review-text{margin:10px 0 6px}.hint{color:var(--muted)}.error{color:var(--danger)}
