:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#101828;background:#f5f7fb;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}.shell{min-height:100vh;display:grid;grid-template-columns:244px 1fr}.shell>aside{position:fixed;inset:0 auto 0 0;width:244px;background:#082543;color:#a9b8c9;display:flex;flex-direction:column;border-right:1px solid #163858}.brand{height:76px;padding:18px;display:grid;grid-template-columns:26px 1fr;align-items:center;color:#fff}.brand svg{color:#39d0ae}.brand b{font-size:22px}.brand b span,.login-brand span span{color:#36d2ad}.brand small{grid-column:2;font-size:9px;letter-spacing:.18em;color:#50dfbd}.shell nav{padding:10px}.shell nav a{display:flex;align-items:center;gap:11px;padding:11px 12px;margin:3px 0;border-radius:8px;color:#a9b8c9;text-decoration:none;font-size:13px}.shell nav a svg{width:17px}.shell nav a.active{background:#124661;color:#40d6b3}.nav-title{font-size:9px;letter-spacing:.16em;color:#69809a;margin:24px 12px 8px}.profile{margin-top:auto;border-top:1px solid #173a5b;padding:16px;display:flex;justify-content:space-between;align-items:center}.profile b,.profile small{display:block;max-width:150px;overflow:hidden;text-overflow:ellipsis}.profile b{font-size:12px;color:#e8eef5}.profile small{font-size:10px;margin-top:4px}.profile button{background:none;border:0;color:#8fa3b8}.profile svg{width:16px}.shell>main{grid-column:2;padding:25px 30px;min-width:0}.page-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}.page-head h1{font-size:24px;margin:0 0 5px}.page-head p{margin:0;color:#667085;font-size:13px}.primary,.secondary{border:0;border-radius:8px;padding:10px 14px;display:inline-flex;align-items:center;justify-content:center;gap:7px;text-decoration:none;font-weight:650;font-size:12px}.primary{background:#35cda9;color:#fff}.primary:hover{background:#24ba98}.primary:disabled{opacity:.5;cursor:not-allowed}.secondary{background:#f2f4f7;color:#344054}.primary svg{width:15px}.full{width:100%;margin-top:16px}.stats{display:grid;grid-template-columns:repeat(6,minmax(130px,1fr));gap:12px;margin-bottom:18px}.stat{background:#fff;border:1px solid #e4e7ec;border-top:3px solid #3bcfad;border-radius:10px;padding:15px}.stat small{display:block;color:#98a2b3;text-transform:uppercase;font-size:9px;letter-spacing:.08em;font-weight:700}.stat strong{display:block;font-size:25px;margin-top:8px}.panel{background:#fff;border:1px solid #e4e7ec;border-radius:11px;padding:19px;box-shadow:0 1px 2px #10182808;overflow:auto}.panel-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.panel h2,.panel-head h2{font-size:16px;margin:0}.panel-head p{margin:4px 0 0;color:#667085;font-size:12px}.panel-head span{color:#98a2b3;font-size:12px}table{width:100%;border-collapse:collapse}th{text-align:left;color:#98a2b3;font-size:9px;text-transform:uppercase;letter-spacing:.08em;padding:10px 11px;border-bottom:1px solid #e4e7ec}td{padding:12px 11px;border-bottom:1px solid #f0f2f5;font-size:12px;vertical-align:middle}tbody tr{cursor:pointer}tbody tr:hover{background:#fafbfc}td small{display:block;color:#98a2b3;margin-top:4px;max-width:420px}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px}.badge{display:inline-flex;border-radius:5px;background:#f2f4f7;color:#475467;padding:4px 7px;font-size:9px;font-weight:800;letter-spacing:.03em}.badge.green{background:#ecfdf3;color:#027a48}.badge.red,.badge.block{background:#fef3f2;color:#b42318}.badge.amber,.badge.review{background:#fffaeb;color:#b54708}.badge.blue{background:#eff8ff;color:#175cd3}.badge.gray{background:#f2f4f7;color:#667085}.builder{display:grid;grid-template-columns:330px 1fr;gap:17px;align-items:start}.config{position:sticky;top:20px}.panel label,.modal label{display:flex;flex-direction:column;gap:6px;margin:13px 0;text-transform:capitalize;color:#475467;font-size:11px;font-weight:650}input,select,textarea{border:1px solid #d0d5dd;border-radius:7px;padding:9px 10px;background:#fff;color:#101828}input:focus,select:focus,textarea:focus{outline:2px solid rgba(53,205,169,.18);border-color:#35cda9}.scenario-grid{display:grid;grid-template-columns:repeat(2,minmax(260px,1fr));gap:10px}.scenario-grid>button{display:flex;gap:10px;text-align:left;border:1px solid #e4e7ec;border-radius:9px;background:#fff;padding:12px;color:#344054}.scenario-grid>button.selected{border-color:#35cda9;background:#f0fdf9}.scenario-grid b{font-size:12px}.scenario-grid p{font-size:11px;color:#667085;margin:5px 0 8px;line-height:1.4}.scenario-grid small{display:flex;gap:6px;align-items:center}.check{width:17px;height:17px;flex:none;border:1px solid #d0d5dd;border-radius:4px;text-align:center;color:#fff}.selected .check{background:#35cda9;border-color:#35cda9}.link{border:0;background:none;color:#12a886;font-size:12px}.danger{border:0;background:#fef3f2;color:#b42318;padding:6px 8px;border-radius:5px;font-size:10px}.modal-bg{position:fixed;z-index:100;top:0;right:0;bottom:0;left:0;background:#1018288c;display:grid;place-items:center;padding:20px}.modal{width:min(720px,100%);max-height:92vh;overflow:auto;background:#fff;border-radius:12px;padding:23px;position:relative;box-shadow:0 24px 60px #10182840}.modal>h2{font-size:18px;margin:0 0 18px}.close{position:absolute;right:16px;top:15px;border:0;background:none;color:#667085}.close svg{width:19px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.code,.result-json pre{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px}.result-json pre{background:#101828;color:#d0d5dd;border-radius:8px;padding:12px;max-height:260px;overflow:auto}.error,.success{padding:10px 12px;border-radius:7px;margin-bottom:12px;font-size:12px}.error{background:#fef3f2;color:#b42318}.success{background:#ecfdf3;color:#027a48}.search{width:min(400px,100%);margin-bottom:13px}.empty{text-align:center;color:#98a2b3;padding:70px 20px}.empty svg{width:36px;height:36px}.empty h2{font-size:14px;font-weight:500}.login{min-height:100vh;display:grid;grid-template-columns:1fr 480px;background:linear-gradient(135deg,#082543,#0c3854 50%,#f5f7fb 50%)}.login-brand{padding:50px;display:grid;grid-template-columns:38px auto;align-content:start;align-items:center;color:#fff}.login-brand svg{color:#36d2ad;width:32px}.login-brand>span{font-size:31px;font-weight:750}.login-brand small{grid-column:2;color:#4be2c0;letter-spacing:.19em}.login form{align-self:center;margin:40px;background:#fff;padding:35px;border-radius:14px;box-shadow:0 20px 50px #10182826}.login h1{margin:0;font-size:25px}.login form>p{color:#667085;font-size:13px;margin-bottom:25px}.login label{display:flex;flex-direction:column;gap:7px;margin:15px 0;font-size:12px;font-weight:650}.login form>button{width:100%;border:0;border-radius:8px;background:#35cda9;color:#fff;padding:11px;font-weight:700;margin-top:8px}@media (max-width:1200px){.stats{grid-template-columns:repeat(3,1fr)}.scenario-grid{grid-template-columns:1fr}}@media (max-width:850px){.shell{grid-template-columns:72px 1fr}.shell>aside{width:72px}.brand b,.brand small,.shell nav a:not(.active){font-size:0}.shell nav a{justify-content:center}.nav-title,.profile div{display:none}.profile{justify-content:center}.shell>main{padding:20px}.builder{grid-template-columns:1fr}.config{position:static}.stats{grid-template-columns:repeat(2,1fr)}.login{display:block;padding:30px}.login-brand{display:none}.login form{max-width:440px;margin:10vh auto}}.hint{color:#667085;font-size:12px}.mapping-list{display:flex;flex-direction:column;gap:8px}.mapping-row{display:grid;grid-template-columns:150px 1fr 2fr 110px;gap:8px;align-items:center;border-bottom:1px solid #eaecf0;padding:8px 0}.mapping-row input,.mapping-row select{min-width:0;font-size:11px}@media (max-width:850px){.mapping-row{grid-template-columns:1fr}.mapping-row b{margin-top:8px}}.composer{background:#f9fafb;border:1px solid #eaecf0;border-radius:8px;padding:12px;margin:14px 0}.composer h3{font-size:12px;margin:0 0 9px}.composer-row{display:grid;grid-template-columns:2fr 1fr auto;gap:8px}.composer p{font-size:11px;color:#667085;margin:8px 0 0}@media (max-width:700px){.composer-row{grid-template-columns:1fr}}
