:root{--font-sans:ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-mono:ui-monospace, "SF Mono", "JetBrains Mono", Menlo, Consolas, monospace;--bg:#f5f7f6;--surface:#fff;--surface-2:#eef2f0;--surface-hover:#f1f5f3;--border:#e2e8e5;--border-strong:#d0d9d5;--text:#14201e;--text-muted:#5c6d68;--text-faint:#5f6f6a;--accent:#0b7a72;--accent-hover:#096a63;--accent-contrast:#fff;--accent-weak:#e3f1ef;--accent-weak-border:#bfe0db;--success:#14724f;--success-weak:#e2f3ea;--warning:#8f6410;--warning-weak:#f7eeda;--info:#2a6aa4;--info-weak:#e5eff7;--shadow-sm:0 1px 2px #0f201d0d;--shadow:0 1px 2px #0f201d0a, 0 6px 20px -8px #0f201d1f;--radius:14px;--radius-pill:999px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0c1311;--surface:#131c19;--surface-2:#1a2420;--surface-hover:#1d2825;--border:#253230;--border-strong:#33413d;--text:#e9efec;--text-muted:#9baaa5;--text-faint:#81918b;--accent:#3ebcae;--accent-hover:#54c8ba;--accent-contrast:#072320;--accent-weak:#14302c;--accent-weak-border:#1f433d;--success:#3cc088;--success-weak:#12271f;--warning:#d7a53f;--warning-weak:#2a2214;--info:#6aa8e0;--info-weak:#14202b;--shadow-sm:0 1px 2px #0006;--shadow:0 1px 2px #00000059, 0 8px 24px -10px #0009;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:#0c1311;--surface:#131c19;--surface-2:#1a2420;--surface-hover:#1d2825;--border:#253230;--border-strong:#33413d;--text:#e9efec;--text-muted:#9baaa5;--text-faint:#81918b;--accent:#3ebcae;--accent-hover:#54c8ba;--accent-contrast:#072320;--accent-weak:#14302c;--accent-weak-border:#1f433d;--success:#3cc088;--success-weak:#12271f;--warning:#d7a53f;--warning-weak:#2a2214;--info:#6aa8e0;--info-weak:#14202b;--shadow-sm:0 1px 2px #0006;--shadow:0 1px 2px #00000059, 0 8px 24px -10px #0009;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}*{margin:0}html{-moz-text-size-adjust:100%;text-size-adjust:100%}body{font-family:var(--font-sans);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;min-height:100dvh;font-size:15px;line-height:1.5}h1,h2,h3{text-wrap:balance;letter-spacing:-.015em;font-weight:660;line-height:1.2}a{color:var(--accent);text-decoration:none}p a:not(.btn){text-underline-offset:2px;text-decoration:underline}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}.skip-link{z-index:100;background:var(--text);color:var(--surface);border-radius:9px;padding:9px 13px;transition:transform .12s;position:fixed;top:8px;left:8px;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}main:focus{outline:none}.mono{font-family:var(--font-mono)}.appbar{border-bottom:1px solid var(--border);background:color-mix(in srgb, var(--surface) 94%, transparent);z-index:30;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);align-items:center;gap:12px;min-height:60px;padding:0 clamp(16px,4vw,32px);display:flex;position:sticky;top:0}.brand{letter-spacing:-.02em;color:var(--text);align-items:center;gap:9px;font-weight:700;display:inline-flex}.brand:hover{text-decoration:none}.mark{background:linear-gradient(150deg, var(--accent), color-mix(in srgb, var(--accent) 60%, #000 8%));width:28px;height:28px;color:var(--accent-contrast);border-radius:8px;place-items:center;font-size:15px;font-weight:800;display:grid}.spacer{flex:1}.who{color:var(--text-muted);align-items:center;gap:10px;font-size:13.5px;display:flex}.avatar{background:var(--accent-weak);width:30px;height:30px;color:var(--accent-hover);border-radius:50%;place-items:center;font-size:12.5px;font-weight:700;display:grid}.btn{border:1px solid var(--border-strong);background:var(--surface);color:var(--text);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;gap:7px;min-height:38px;padding:8px 14px;font-size:14px;font-weight:550;line-height:1;display:inline-flex}.btn:hover{background:var(--surface-hover);text-decoration:none}.btn:disabled{cursor:wait;opacity:.65}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--accent-contrast)}.btn-primary:hover{background:var(--accent-hover)}.btn-ghost{color:var(--text-muted);background:0 0;border-color:#0000}.btn-ghost:hover{background:var(--surface-hover);color:var(--text)}main{max-width:1000px;margin:0 auto;padding:clamp(28px,5vw,52px) clamp(16px,4vw,32px) 80px}.head{margin-bottom:26px}.eyebrow{letter-spacing:.05em;text-transform:uppercase;color:var(--accent);margin-bottom:6px;font-size:12px;font-weight:620}.head h1{font-size:clamp(24px,3.4vw,32px)}.head p{color:var(--text-muted);margin-top:8px;font-size:15px}.section-label{letter-spacing:.05em;text-transform:uppercase;color:var(--text-faint);margin:24px 0 12px;font-size:12px;font-weight:620}.grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;display:grid}.tile{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);color:inherit;align-items:center;gap:15px;padding:18px 20px;transition:box-shadow .15s,transform 50ms,border-color .15s;display:flex}.tile:hover{box-shadow:var(--shadow);border-color:var(--accent-weak-border);text-decoration:none;transform:translateY(-1px)}.tile:active{transform:translateY(0)}.tile-icon{background:var(--accent-weak);width:46px;height:46px;color:var(--accent);border-radius:12px;flex:none;place-items:center;display:grid}.tile-icon svg{width:24px;height:24px}.tile.odoo .tile-icon{color:#7b5bd6;background:#7b5bd629}.tile.erpnext .tile-icon{color:#2f6bd8;background:#2f6bd829}.tile-body{flex-direction:column;flex:1;align-items:flex-start;min-width:0;display:flex}.tile-title{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:16px;font-weight:640;overflow:hidden}.tile-sub{max-width:100%;color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;margin-top:1px;font-size:13px;overflow:hidden}.tile-chev{color:var(--text-faint);flex:none}.tile-chev svg{width:18px;height:18px}.tile-disabled{cursor:default;background:var(--surface-2);box-shadow:none;border-style:dashed;align-items:flex-start}.tile-disabled:hover{box-shadow:none;border-color:var(--border);transform:none}.tile-disabled .tile-icon{background:var(--surface);color:var(--text-faint)}.tile-disabled .tile-title{color:var(--text-muted)}.tile-note{color:var(--text-muted);white-space:normal;margin-top:6px;line-height:1.4}.pill.warn{background:var(--warning-weak);color:var(--warning)}.pill{border-radius:var(--radius-pill);background:var(--surface-2);color:var(--text-muted);align-items:center;gap:5px;margin-top:6px;padding:3px 9px;font-size:12px;font-weight:600;display:inline-flex}.pill:before{content:"";opacity:.85;background:currentColor;border-radius:50%;width:6px;height:6px}.pill.owner{background:var(--accent-weak);color:var(--accent-hover)}.pill.staff{background:var(--info-weak);color:var(--info)}.empty{text-align:center;color:var(--text-muted);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;align-items:center;gap:12px;padding:56px 24px;display:flex}.empty svg{opacity:.5;width:38px;height:38px}.empty h3{color:var(--text);font-size:16px}.empty p{max-width:46ch;font-size:14px}.auth-wrap{place-items:center;min-height:100dvh;padding:24px;display:grid}.auth-card{text-align:center;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);width:100%;max-width:420px;box-shadow:var(--shadow);padding:38px 30px}.auth-card .mark{border-radius:12px;width:44px;height:44px;margin:0 auto 18px;font-size:22px}.auth-card h1{margin-bottom:8px;font-size:22px}.auth-card p{color:var(--text-muted);margin-bottom:22px;font-size:14.5px}.auth-card .btn{width:100%}.note{color:var(--text-faint);margin-top:18px;font-size:12.5px}.note code{font-family:var(--font-mono);background:var(--surface-2);border-radius:5px;padding:1px 5px}.banner{background:var(--warning-weak);color:var(--warning);border:1px solid color-mix(in srgb, var(--warning) 30%, transparent);border-radius:12px;gap:10px;margin-bottom:20px;padding:12px 16px;font-size:13.5px;display:flex}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.card-pad{padding:20px 22px}.card-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:15px 22px;display:flex}.card-head h2{font-size:16px;font-weight:640}.stack{flex-direction:column;gap:14px;display:flex}.row{align-items:center;gap:10px;display:flex}.between{justify-content:space-between}.wrap-row{flex-wrap:wrap}.muted{color:var(--text-muted)}.faint{color:var(--text-faint)}.small{font-size:13px}.strong{font-weight:620}.btn-sm{border-radius:8px;min-height:34px;padding:6px 11px;font-size:13px}.btn-danger{background:var(--danger-weak,#f7e4e1);color:var(--danger,#b0362b);border-color:#0000}.btn-block{justify-content:center;width:100%}.form{flex-direction:column;gap:15px;display:flex}.form-row{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:15px;display:grid}.field{flex-direction:column;gap:6px;display:flex}.label{color:var(--text-muted);font-size:12.5px;font-weight:580}.input,.select,.textarea{border:1px solid var(--border-strong);background:var(--surface);width:100%;color:var(--text);border-radius:10px;padding:9px 11px;font-family:inherit;font-size:14.5px;transition:border-color .12s,box-shadow .12s}.input:focus,.select:focus,.textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-weak);outline:none}.textarea{resize:vertical;min-height:74px}.hint{color:var(--text-faint);font-size:12px}.req{color:var(--accent)}.banner.ok{background:var(--success-weak);color:var(--success);border-color:color-mix(in srgb, var(--success) 30%, transparent)}.banner.info{background:var(--info-weak);color:var(--info);border-color:color-mix(in srgb, var(--info) 30%, transparent)}.banner.decision{background:var(--danger-weak,#f7e4e1);color:var(--danger,#b0362b);border-color:color-mix(in srgb, var(--danger,#b0362b) 30%, transparent)}.load-failure{justify-content:space-between;align-items:center}.load-failure>span{flex:1}.load-failure .btn{flex:none}.back-link{color:var(--text-muted);align-items:center;gap:6px;margin-bottom:16px;font-size:13.5px;display:inline-flex}.back-link:hover{color:var(--text)}.table-wrap{overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);overflow-x:auto}table.tbl{border-collapse:collapse;width:100%;font-size:14px}.tbl thead th{text-align:left;letter-spacing:.04em;text-transform:uppercase;color:var(--text-faint);border-bottom:1px solid var(--border);background:var(--surface-2);white-space:nowrap;padding:11px 16px;font-size:11.5px;font-weight:620}.tbl tbody td{border-bottom:1px solid var(--border);vertical-align:middle;padding:12px 16px}.tbl tbody tr:last-child td{border-bottom:none}.chip{border-radius:var(--radius-pill);background:var(--surface-2);color:var(--text-muted);align-items:center;gap:5px;padding:3px 9px;font-size:12px;font-weight:600;display:inline-flex}.chip.pending{background:var(--warning-weak);color:var(--warning)}.chip.approved,.chip.active{background:var(--success-weak);color:var(--success)}.chip.rejected{background:var(--danger-weak,#f7e4e1);color:var(--danger,#b0362b)}.chip.new{background:var(--warning-weak);color:var(--warning)}.chip.won{background:var(--success-weak);color:var(--success)}.chip.lost{background:var(--danger-weak,#f7e4e1);color:var(--danger,#b0362b)}@media (prefers-reduced-motion:reduce){*{transition:none!important}}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.signout{margin-left:4px}@media (max-width:640px){.appbar{padding:8px 12px}.who-label{display:none}.who{margin-left:auto}.signout{min-height:42px;margin-left:0}main{padding:22px 14px 64px}.head{margin-bottom:20px}.head .between{align-items:flex-start}.head .between>.row{width:100%}.head .between>.row .btn{flex:1}.grid{grid-template-columns:1fr;gap:12px}.tile,.card-pad{padding:16px}.card-head{flex-wrap:wrap;align-items:flex-start;padding:14px 16px}.form-row{grid-template-columns:1fr}.load-failure{flex-direction:column;align-items:stretch}.load-failure .btn{width:100%}.btn{min-height:44px}.btn-sm{min-height:40px}.auth-wrap{padding:16px}.auth-card{padding:30px 20px}.table-wrap .tbl:not(.responsive){min-width:580px}.table-wrap:has(.tbl.responsive){overflow-x:visible}.tbl.responsive{min-width:0}.tbl.responsive thead{display:none}.tbl.responsive,.tbl.responsive tbody,.tbl.responsive tr,.tbl.responsive td{width:100%;display:block}.tbl.responsive tr{border-bottom:1px solid var(--border);padding:6px 4px}.tbl.responsive td{text-align:right;border:none;justify-content:space-between;gap:16px;padding:6px 12px;display:flex}.tbl.responsive td:before{content:attr(data-label);color:var(--text-faint);text-align:left;font-size:12px;font-weight:580}.tbl.responsive td.row-actions-cell{text-align:left;display:block}.tbl.responsive td.row-actions-cell:before{margin-bottom:6px;display:block}.tbl.responsive .send-form{width:100%;min-width:0}}@media (max-width:390px){.brand{font-size:14px}.who{display:none}}.send-form{text-align:left;min-width:260px;margin-top:8px}.account-bar{justify-content:flex-end;align-items:center;gap:10px;max-width:1100px;margin:0 auto;padding:10px 20px 0;display:flex}.account-who{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;max-width:22ch;font-size:13px;overflow:hidden}
