:root{color:#10233a;font-synthesis:none;background:#f4f8fc;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0}.header{background:#fff;border-bottom:1px solid #dce5ed;justify-content:space-between;align-items:center;height:72px;padding:10px max(20px,50% - 560px);display:flex}.header img{object-fit:contain;max-width:min(280px,68vw);height:53px}.header a{color:#00529b;font-size:14px;font-weight:650;text-decoration:none}.hero{color:#fff;background:linear-gradient(115deg,#003a74,#0069b9);padding:56px max(20px,50% - 560px)}.hero>div,.content{max-width:1120px;margin:auto}.eyebrow{letter-spacing:.12em;color:#bfe3ff;margin:0 0 10px;font-size:12px;font-weight:700}h1{margin:0;font-size:clamp(31px,6vw,47px);line-height:1.08}.subtitle{color:#e1f1ff;max-width:540px;margin:15px 0 0;font-size:17px;line-height:1.5}.content{padding:30px 20px 56px}.notice{color:#194c76;background:#e8f4ff;border:1px solid #c6e4f9;border-radius:10px;align-items:start;gap:10px;padding:13px 16px;display:flex}.notice span{color:#fff;background:#1672b9;border-radius:100%;flex:none;place-items:center;width:18px;height:18px;font-size:12px;font-weight:700;display:grid}.notice p{margin:0;font-size:14px;line-height:1.4}.filters{grid-template-columns:1fr 1.3fr auto;align-items:end;gap:16px;margin:25px 0 18px;display:grid}label{color:#40546a;gap:7px;font-size:13px;font-weight:650;display:grid}select,input[type=text],input:not([type]){color:#132a42;width:100%;height:44px;font:inherit;background:#fff;border:1px solid #bccad7;border-radius:8px;outline-color:#0069b9;padding:0 12px;font-weight:400}.toggle{white-space:nowrap;align-items:center;gap:8px;height:44px;font-size:14px;display:flex}.toggle input{accent-color:#0069b9;width:18px;height:18px}.summary{background:#fff;border:1px solid #dce5ed;border-radius:11px 11px 0 0;align-items:center;gap:0;padding:13px 18px;display:flex}.summary div{border-right:1px solid #e1e8ef;min-width:140px}.summary div+div{padding-left:22px}.summary b{color:#00529b;font-size:20px;display:block}.summary span{color:#657789;font-size:12px}.summary p{color:#657789;text-align:right;margin:0 0 0 auto;font-size:12px}.legend{color:#53677a;align-items:center;gap:8px;padding:13px 0;font-size:12px;display:flex}.dot{border-radius:50%;width:9px;height:9px;margin-left:11px;display:inline-block}.dot:first-child{margin-left:0}.green{background:#39a96b}.blue{background:#1672b9}.table-wrap{background:#fff;border:1px solid #dce5ed;border-radius:10px;overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:690px}th{color:#5e7183;letter-spacing:.02em;text-align:left;background:#f6f9fc;padding:14px 17px;font-size:12px}td{border-top:1px solid #e4ebf1;padding:15px 17px;font-size:14px}.budget{background:#f0faf5}.matched{background:#dcefff;box-shadow:inset 4px 0 #0069b9,inset 0 0 0 1px #79b9e8}.matched td{color:#003d73;font-weight:650}.score{color:#00529b;font-weight:700}.check{color:#16834c;font-weight:650}.empty{color:#8392a0}.updating{color:#657789;margin:8px 2px 0;font-size:12px}footer{color:#c2d1df;text-align:center;background:#102e4c;padding:22px 20px;font-size:12px}@media (width<=760px){.header{height:64px}.header img{height:44px}.header a{display:none}.hero{padding-top:39px;padding-bottom:39px}.content{padding-top:20px}.filters{grid-template-columns:1fr;gap:14px}.toggle{height:26px}.summary{flex-wrap:wrap;gap:14px}.summary div{min-width:120px}.summary p{text-align:left;width:100%;margin:0}}html,body,#root{width:100%;max-width:100%;min-height:100%}body{min-height:100vh;margin:0;overflow-x:hidden}#root>main{flex-direction:column;width:100%;max-width:100%;min-height:100vh;display:flex}#root>main>footer{margin-top:auto}.admin{background:#fff;border:1px solid #dce5ed;border-radius:14px;width:min(100% - 32px,640px);margin:44px auto;padding:30px;box-shadow:0 12px 34px #0f35541a}.admin h1{color:#003f78;margin:16px 0 6px;font-size:29px}.admin>a{color:#0069b9;font-size:14px;font-weight:650;text-decoration:none}.admin>p{color:#62778a;margin:0 0 24px}.admin form{gap:16px;margin-top:26px;display:grid}.admin label{color:#3c5267;gap:7px;font-size:13px;font-weight:700;display:grid}.admin input,.admin select{color:#152d45;width:100%;height:45px;font:inherit;background:#fff;border:1px solid #bdcad6;border-radius:8px;outline-color:#0069b9;padding:0 12px}.admin label:has(input[type=checkbox]){align-items:center;gap:9px;font-size:14px;display:flex}.admin input[type=checkbox]{accent-color:#0069b9;width:18px;height:18px}.admin button{color:#fff;min-height:46px;font:inherit;cursor:pointer;background:#005ba7;border:0;border-radius:8px;font-weight:700;transition:background .15s,transform .15s}.admin button:hover{background:#004a89;transform:translateY(-1px)}.admin .publish{background:#16834c;width:100%;margin-top:26px}.admin .publish:hover{background:#116d3e}.admin .clear{color:#36546e;background:#eef3f7;width:100%;margin-top:10px}.admin .clear:hover{background:#dbe8f1}.preview{background:#f3faff;border:1px solid #c8e1f4;border-radius:10px;margin-top:25px;padding:18px}.preview>span{color:#39719c;letter-spacing:.08em;margin-bottom:9px;font-size:11px;font-weight:800;display:block}.preview strong{color:#003f78;font-size:18px}.preview p{color:#5d7183;margin:5px 0;font-size:13px}.preview div{grid-template-columns:repeat(3,auto);justify-content:start;gap:2px 10px;margin-top:14px;display:grid}.preview b{color:#005ba7;font-size:18px}.preview small{color:#62778a;font-size:11px}.draft-list{border-top:1px solid #dce5ed;margin-top:28px;padding-top:20px}.draft-list h2{color:#003f78;margin:0 0 12px;font-size:19px}.draft-list h2 span{color:#66839a;font-size:14px}.draft-list article{border-top:1px solid #e6edf2;justify-content:space-between;align-items:center;gap:12px;padding:13px 0;display:flex}.draft-list article:first-of-type{border-top:0}.draft-list strong{color:#1d3d58;font-size:14px}.draft-list p{color:#607488;margin:5px 0;font-size:12px}.draft-list small{color:#16834c;font-size:12px}.draft-list .delete{color:#b23030;background:#fff1f1;min-height:34px;padding:0 11px;font-size:12px}.draft-list .delete:hover{background:#f9dddd}.admin .publish+p,.admin form+p{color:#1a547f;background:#eaf4fd;border-radius:7px;margin-top:14px;padding:11px 13px;font-size:14px}@media (width<=540px){.admin{width:calc(100% - 24px);margin:20px auto;padding:21px}.admin h1{font-size:25px}}.admin.wide{width:min(100% - 48px,1440px);max-width:none}.program-filter{width:min(680px,100%);margin:24px 0}.admin-workspace{grid-template-columns:minmax(0,1fr) 330px;align-items:start;gap:24px;display:grid}.side-panel{background:#f8fbfe;border:1px solid #dce5ed;border-radius:10px;padding:18px}.side-panel form{margin-top:16px}.tabs{gap:6px;display:flex}.tabs button{color:#49647a;background:#e5eef5;flex:1}.tabs button.active{color:#fff;background:#005ba7}.draft-list{overflow-x:auto}.draft-list table{min-width:760px}.draft-list button{min-height:auto;margin:2px;padding:7px 9px;font-size:12px}.excel-placeholder{color:#657789;padding:25px 6px}.excel-placeholder p{font-size:13px;line-height:1.45}@media (width<=980px){.admin-workspace{grid-template-columns:1fr}.side-panel{order:-1}}.draft-list thead th{z-index:2;background:#f6f9fc;position:sticky;top:0;box-shadow:0 1px #dce5ed}.draft-list{background:#fff;border:1px solid #dce5ed;border-radius:10px}.draft-list h2{margin:0;padding:17px 18px;font-size:17px}.draft-list table{border-collapse:collapse;width:100%}.draft-list th{z-index:2;color:#5b7184;text-align:left;background:#f4f8fb;padding:12px 14px;font-size:12px;position:sticky;top:0}.draft-list td{white-space:nowrap;border-top:1px solid #e4ebf1;padding:11px 14px;font-size:13px}.draft-list td:nth-child(2){white-space:normal;width:100%}.draft-list td:last-child{text-align:right}.draft-list input,.draft-list select{max-width:160px;height:34px;padding:0 7px}.draft-list button{color:#245475;background:#fff;border:1px solid #b8c8d6;border-radius:6px}.draft-list button:last-child{color:#af3232}html,body,#root{overflow-x:hidden}.public-list{width:100%;min-width:0;max-width:100%;overflow-x:hidden}.public-list>*{min-width:0;max-width:100%}.public-list .content,.public-list .summary,.public-list .legend,.public-list .table-wrap{min-width:0}.public-list .table-wrap{-webkit-overflow-scrolling:touch;overscroll-behavior-inline:contain;width:100%;max-width:100%;overflow-x:auto}@media (width<=760px){.public-list .content{width:100%}.public-list .table-wrap table{min-width:690px}}
