:root{--bg: #f7f7f4;--panel: #ffffff;--text: #1c1c1a;--muted: #6a6a63;--line: #deded6;--accent: #0f766e;--accent-strong: #0b5f59;--danger: #991b1b;--warning: #a16207;--shadow: 0 18px 45px rgba(24, 24, 20, .08)}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,textarea,select{font:inherit}.app-shell{display:grid;grid-template-columns:280px 1fr;min-height:100vh}.sidebar{border-right:1px solid var(--line);padding:24px;background:#efefe9}.brand{display:flex;gap:12px;align-items:center;margin-bottom:32px}.brand-mark{display:grid;place-items:center;width:44px;height:44px;border-radius:8px;background:var(--text);color:#fff;font-weight:800}h1,h2,h3,p{margin:0}.brand h1{font-size:18px;line-height:1.2}.brand p,.page-header p,.module p,.site-card p,.empty-state p,.auth-label,.auth-status{color:var(--muted)}.brand p{margin-top:4px;font-size:13px}.nav{display:grid;gap:8px}.nav-button{width:100%;border:0;border-radius:8px;padding:12px 14px;background:transparent;color:var(--muted);text-align:left;cursor:pointer}.nav-button:hover,.nav-button.active{background:var(--panel);color:var(--text)}.auth-box{margin-top:28px;padding-top:20px;border-top:1px solid var(--line)}.auth-box form{display:grid;gap:10px}.auth-box label,.auth-label{font-size:13px;font-weight:800}.auth-box input{width:100%;border:1px solid var(--line);border-radius:8px;padding:10px 11px;background:#fff}.auth-email{margin:6px 0 12px;word-break:break-word}.auth-status{min-height:20px;font-size:13px}.content{padding:32px}.page-header{margin-bottom:24px}.page-header h2{font-size:clamp(28px,4vw,46px);line-height:1.05}.page-header p{margin-top:10px;max-width:780px;font-size:16px;line-height:1.5}.module-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:24px}.module,.workflow,.site-card,.rule-list div,.empty-state,table{background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow)}.module{min-height:132px;padding:18px}.module span{color:var(--accent);font-weight:800;font-size:13px}.module h3{margin-top:28px;font-size:22px}.workflow,.empty-state{padding:22px}.workflow h3{margin-bottom:14px}.workflow ol{display:grid;gap:10px;margin:0;padding-left:22px}.site-list{display:grid;gap:12px}.sites-layout{display:grid;grid-template-columns:minmax(320px,.42fr) minmax(0,.58fr);gap:18px;align-items:start}.site-editor{display:grid;gap:16px;position:sticky;top:24px;padding:18px;background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow)}.editor-header{display:flex;justify-content:space-between;gap:14px;align-items:start}.editor-header h3{font-size:18px}.editor-header p{margin-top:5px;color:var(--muted);line-height:1.35}.form-grid.compact{grid-template-columns:1fr}.site-card{display:grid;grid-template-columns:1fr auto;gap:16px;align-items:center;padding:16px}.site-card.selected{border-color:var(--accent)}.site-card h3{font-size:18px}.site-card p{margin-top:6px}.status{border-radius:999px;padding:7px 10px;font-size:12px;font-weight:800}.status.enabled{background:#ccfbf1;color:#115e59}.status.disabled{background:#fee2e2;color:var(--danger)}.site-actions{display:grid;grid-template-columns:1fr;gap:8px;min-width:104px}.primary-button,.ghost-button{border:0;border-radius:8px;padding:11px 14px;font-weight:800;cursor:pointer}.primary-button{background:var(--accent);color:#fff}.primary-button:hover{background:var(--accent-strong)}.ghost-button{background:#fff;color:var(--text);border:1px solid var(--line)}.link-button{display:block;text-align:center;text-decoration:none}.small-button{padding:8px 10px;font-size:13px}.full{width:100%}table{width:100%;border-collapse:collapse;overflow:hidden}th,td{padding:14px 16px;border-bottom:1px solid var(--line);text-align:left}th{background:#efefe9;font-size:13px;text-transform:uppercase}.rule-list{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.rule-list div{padding:16px;color:var(--warning);font-weight:800}.profile-form{display:grid;gap:18px}.profile-status-row,.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.role-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.role-card,.source-list{background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow)}.role-card{padding:16px}.role-card span{color:var(--accent);font-size:12px;font-weight:800;text-transform:uppercase}.role-card h3{margin-top:10px;font-size:17px;line-height:1.25}.role-card p{margin-top:8px;color:var(--muted);line-height:1.45}.source-list{display:grid;gap:8px;padding:16px}.source-list h3{font-size:16px}.source-list a{color:var(--accent-strong);font-weight:800;overflow-wrap:anywhere}.form-stack{display:grid;gap:14px}.field{display:grid;gap:8px;color:var(--text);font-size:13px;font-weight:800}.field input,.field textarea,.field select{width:100%;border:1px solid var(--line);border-radius:8px;padding:11px 12px;background:#fff;color:var(--text);font-weight:500}.field textarea{min-height:112px;resize:vertical;line-height:1.45}.toggle-row{display:flex;gap:10px;align-items:center;font-size:13px;font-weight:800}.toggle-row input{width:18px;height:18px;accent-color:var(--accent)}.missing-box{border:1px solid #f3d38b;border-radius:8px;padding:16px;background:#fff7db}.missing-box h3{color:var(--warning);font-size:16px}.missing-box p{margin-top:6px;color:var(--muted)}.save-button{justify-self:start;min-width:180px}@media(max-width:900px){.app-shell{grid-template-columns:1fr}.sidebar{border-right:0;border-bottom:1px solid var(--line)}.nav,.module-grid,.rule-list,.role-grid,.profile-status-row,.sites-layout{grid-template-columns:repeat(2,minmax(0,1fr))}.site-editor{position:static}}@media(max-width:620px){.content,.sidebar{padding:18px}.module-grid,.rule-list,.form-grid,.role-grid,.profile-status-row,.sites-layout,.site-card{grid-template-columns:1fr}.save-button{width:100%}}
