:root{font:16px/1.65 Arial,"Geeza Pro",sans-serif;color:#103b50;background:#f5faf9}*{box-sizing:border-box}body{margin:0;min-height:100vh;display:flex;flex-direction:column;background:radial-gradient(circle at 50% 15%,#e9f8f6,#f6faf9 55%)}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.55;cursor:not-allowed}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #09a3a1;outline-offset:3px}.topbar{min-height:76px;background:#fff;border-bottom:1px solid #dcebea;display:flex;align-items:center;justify-content:space-between;padding:12px clamp(18px,5vw,70px);gap:16px}.brand{border:0;background:none;display:flex;gap:12px;align-items:center;color:#073c52;font:bold 23px Arial,sans-serif;direction:ltr}.mark{display:grid;grid-template-columns:repeat(2,10px);gap:3px;transform:rotate(-13deg)}.mark i{height:10px;border-radius:3px;background:#039b99}.mark i:nth-child(2),.mark i:nth-child(3){opacity:.55}.top-end{display:flex;align-items:center;gap:10px}.pill,.eyebrow{display:inline-flex;border-radius:999px;background:#e7f6f4;color:#006f70;padding:7px 13px;font-size:.85rem;font-weight:bold}.switch{border:1px solid #bad5d2;background:#fff;color:#174a5b;border-radius:10px;padding:7px 12px}#app{width:min(1160px,calc(100% - 36px));margin:0 auto;flex:1;padding:36px 0 60px}#notice{width:min(1160px,calc(100% - 36px));margin:16px auto 0;padding:11px 16px;border-radius:12px;background:#e5f6ed;color:#176543;font-weight:bold}#notice.error{background:#fff0ec;color:#a43f30}footer{text-align:center;color:#6d8993;border-top:1px solid #e0eceb;padding:18px;font-size:.82rem}.welcome{max-width:980px;margin:25px auto 0}.welcome-head{text-align:center;margin-bottom:38px}.welcome h1{font-size:clamp(2.1rem,5vw,3.25rem);line-height:1.3;margin:15px 0 8px}.welcome-head p{color:#5c7c87;font-size:1.1rem;margin:0}.roles{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.card{background:#fff;border:1px solid #dceae9;border-radius:22px;box-shadow:0 15px 42px #073c520a}.role{padding:30px;min-height:265px;display:flex;flex-direction:column}.symbol{display:grid;place-items:center;width:56px;height:56px;border-radius:16px;background:#e5f7f4;color:#007f80;font-size:1.6rem}.role h2{font-size:1.65rem;margin:16px 0 5px}.role p{color:#5c7b86;margin:0 0 20px}.role .button{margin-top:auto;align-self:flex-start}.button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:9px 18px;border:1px solid #008b8b;border-radius:11px;background:#008b8b;color:white;font-weight:bold;text-decoration:none;line-height:1.4}.button:hover:not(:disabled){background:#007577}.button.secondary{background:#fff;color:#075267;border-color:#b6d1d0}.button.secondary:hover:not(:disabled){background:#eaf7f5}.button.text{background:none;border-color:transparent;color:#007b7c}.info{border:1px solid #d5e9e5;background:#ebf8f6;color:#3c6974;border-radius:13px;padding:12px 15px;font-size:.92rem}.welcome .info{margin-top:24px}.layout{display:grid;grid-template-columns:210px minmax(0,1fr);gap:24px}.sidebar{padding:19px;align-self:start}.sidebar p{font-size:.83rem;color:#6a858e;font-weight:bold;margin:0 0 12px}.nav{display:grid;gap:7px}.nav button{width:100%;border:0;background:none;border-radius:10px;color:#456876;text-align:right;padding:11px 12px;font-weight:bold}.nav button.active,.nav button:hover{background:#e5f5f3;color:#00787a}.page-head{display:flex;justify-content:space-between;align-items:end;gap:14px;margin-bottom:20px}.page-head h1{font-size:clamp(1.75rem,3vw,2.25rem);line-height:1.35;margin:3px 0}.page-head p{margin:0;color:#5d7a85}.step{font-size:.84rem;color:#007e80;font-weight:bold}.stack{display:grid;gap:18px}.panel{padding:23px}.panel h2{font-size:1.22rem;margin:0 0 15px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.stat{padding:18px 20px}.stat strong{display:block;font-size:1.8rem;line-height:1.2}.stat span{font-size:.9rem;color:#5b7a85}.study-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:15px 0;border-top:1px solid #e8f0ef}.study-row:first-of-type{border:0;padding-top:0}.study-row h3,.match h3{font-size:1.08rem;margin:0 0 4px}.study-row p,.match p{color:#64818b;margin:0}.badge{display:inline-flex;padding:4px 10px;border-radius:999px;background:#e7f6f4;color:#007779;font-size:.82rem;font-weight:bold;white-space:nowrap}.badge.done{background:#e6f5ed;color:#197750}.badge.neutral{background:#eff3f3;color:#607b85}.two-col{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(220px,.8fr);gap:20px}.aside{background:#eaf7f5;border:1px solid #cfe9e5;border-radius:18px;padding:19px;align-self:start}.aside h3{font-size:1rem;margin:0 0 7px}.aside p{margin:0;color:#4d717b;font-size:.92rem}.fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.field{display:grid;gap:5px}.wide{grid-column:1/-1}.field label{font-weight:bold;font-size:.91rem}.field input,.field select,.field textarea{width:100%;min-height:44px;padding:9px 11px;border:1px solid #b9d0d3;background:#fff;color:#103b50;border-radius:10px}.field textarea{min-height:84px;resize:vertical}.actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:20px}.muted{color:#66818b;font-size:.88rem}.check{display:flex;align-items:flex-start;gap:9px;margin-top:17px}.check input{width:20px;height:20px;margin:3px 0 0;accent-color:#008b8b}.check label{font-weight:bold}.progress{height:7px;background:#e2f0ed;border-radius:99px;overflow:hidden;margin-bottom:20px}.progress span{display:block;width:55%;height:100%;background:#009b98}.progress.done span{width:100%}.matches{display:grid;gap:14px}.match{padding:21px}.match-top{display:flex;align-items:start;justify-content:space-between;gap:12px}.match .reason{margin-top:12px;color:#345f69}.match .button{margin-top:15px}.detail-title{font-size:1.5rem;margin:0 0 18px}.details{margin:0}.details div{display:flex;justify-content:space-between;gap:15px;border-top:1px solid #e8efef;padding:11px 0}.details dt{font-weight:bold}.details dd{margin:0;text-align:left;color:#4c6f7b}.table-wrap{overflow-x:auto}.requests{border-collapse:collapse;width:100%;min-width:650px}.requests th,.requests td{text-align:right;border-top:1px solid #e8efef;padding:12px 9px;vertical-align:middle}.requests th{color:#69828c;font-size:.87rem}.requests td{font-size:.91rem}.requests .button{min-height:36px;padding:6px 10px;font-size:.83rem}.row-actions{display:flex;flex-wrap:wrap;gap:7px}.empty{text-align:center;padding:40px 22px}.empty h2{margin:0 0 7px}.empty p{color:#62808a;margin:0 0 18px}@media(max-width:900px){.layout{grid-template-columns:1fr}.sidebar{padding:12px}.sidebar p{display:none}.nav{display:flex;flex-wrap:wrap}.nav button{width:auto}.two-col{grid-template-columns:1fr}}@media(max-width:680px){.topbar{min-height:68px}.brand{font-size:20px}.pill{display:none}#app{padding-top:22px}.roles,.stats,.fields{grid-template-columns:1fr}.role{min-height:0}.welcome{margin-top:5px}.welcome-head{margin-bottom:26px}.page-head{display:block}.page-head .button{margin-top:12px}.panel{padding:19px}.stat strong{font-size:1.5rem}.match-top{display:block}.match-top .badge{margin-top:9px}.details div{display:block}.details dd{text-align:right}footer{font-size:.75rem}}

.layout>div{min-width:0}
.stack{grid-template-columns:minmax(0,1fr);min-width:0}.panel,.stats{min-width:0}
