:root{color-scheme:dark;--bg:#10191d;--panel:#19262c;--border:#2b3d43;--text:#e9f1ef;--muted:#a3b5b7;--accent:#9ae5bf;--accent-dark:#183e30;font-family:Inter,"Segoe UI",sans-serif}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text)}button,input,select,textarea{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer;border:1px solid var(--border);border-radius:10px;padding:10px 15px;background:var(--panel);color:var(--text);font-weight:600}button:hover{border-color:var(--accent);color:var(--accent)}button:focus-visible,a:focus-visible{outline:3px solid var(--accent);outline-offset:3px}button:disabled{opacity:.5;cursor:wait}[hidden]{display:none!important}
.portal-header{padding:22px max(28px,calc((100vw - 1440px)/2));border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:20px;background:#111e23}.portal-brand{color:var(--text);text-decoration:none;font-size:33px;font-weight:800;letter-spacing:-1px}.portal-brand>span{color:var(--accent)}.portal-brand small{display:inline-block;font-size:10px;letter-spacing:2px;color:var(--muted);margin-left:20px;vertical-align:middle}.header-tools{display:flex;align-items:center;gap:10px}.header-tools>span{font-size:13px;color:var(--muted);margin-right:12px}.portal-main{max-width:1496px;margin:auto;padding:0 28px}.hero{padding:48px 0 28px}.eyebrow{font-size:11px;color:var(--accent);letter-spacing:2px;font-weight:700}h1{font-size:clamp(28px,3.2vw,46px);line-height:1.15;letter-spacing:-1px;margin:16px 0}h1 span{color:var(--accent)}.hero>p{color:var(--muted);max-width:750px;font-size:16px;line-height:1.6}.metrics{display:flex;align-items:center;gap:40px;margin-top:28px}.metrics>div:not(.workflow){display:flex;align-items:baseline;gap:10px}.metrics strong{font-size:30px}.metrics span{color:var(--muted);font-size:14px}.workflow{margin-left:auto;color:var(--muted);font-size:13px}.workflow i{color:var(--accent);font-style:normal;margin:0 12px}
.filters{display:grid;grid-template-columns:2fr 1fr 1.5fr 1fr;gap:12px;border:1px solid var(--border);padding:18px;border-radius:16px;background:var(--panel)}label>span{display:block;font-size:12px;color:var(--muted);margin-bottom:8px}input,select,textarea{width:100%;border:1px solid var(--border);border-radius:9px;background:#101d22;color:var(--text);padding:11px 12px;outline:none}input:focus,select:focus,textarea:focus{border-color:var(--accent)}select{min-width:0}.results-heading{display:flex;align-items:center;justify-content:space-between;margin:28px 0 16px}.results-heading h2{font-size:20px;margin:0}.results-heading>span{font-size:13px;color:var(--muted)}.publication-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.publication-card{background:var(--panel);border:1px solid var(--border);border-radius:18px;overflow:hidden}.card-header{padding:16px 18px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:10px}.card-header h3{font-size:15px;line-height:1.4;margin:0}.card-header small{display:block;font-size:11px;color:var(--muted);margin-top:4px}.role-chip{background:#26363e;padding:5px 8px;border-radius:6px;font-size:10px;white-space:nowrap}.role-chip.main{background:var(--accent-dark);color:var(--accent)}.card-body{display:grid;grid-template-columns:minmax(140px,32%) 1fr;gap:16px;padding:18px}.media-block{min-width:0}.media-block video{width:100%;height:310px;object-fit:contain;background:#080d10;border-radius:10px}.download{display:block;text-align:center;background:var(--accent);color:#103328;border:0;text-decoration:none;border-radius:10px;padding:12px 8px;margin-top:12px;font-size:13px;font-weight:700}.download:hover{background:#b8f6d6}.file-info{font-size:11px;line-height:1.5;color:var(--muted);margin-top:10px;overflow-wrap:anywhere}.copy-fields{min-width:0}.copy-label{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.copy-label label{font-size:12px;color:var(--muted)}.copy-label button{font-size:11px;padding:7px 9px;background:#22393a;border-color:#365556;color:var(--accent)}textarea{font-size:13px;line-height:1.5;resize:vertical;white-space:pre-wrap}.title-field{height:88px;min-height:65px}.description-field{height:225px;min-height:100px}.description-label{margin-top:16px}.card-bottom{display:flex;align-items:center;justify-content:space-between;padding:0 18px 16px;color:var(--muted);font-size:11px}.card-bottom button{padding:4px 8px;font-size:11px;font-weight:400;background:transparent}.notice{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:var(--accent);color:#103328;padding:14px 22px;border-radius:12px;max-width:90vw;box-shadow:0 12px 50px #0008;font-weight:600;z-index:5}.error{padding:18px;border:1px solid #af6d65;background:#43262a;border-radius:12px}.empty{text-align:center;padding:50px;color:var(--muted)}.more{display:block;margin:28px auto;padding:14px 35px}footer{display:flex;justify-content:space-between;gap:20px;padding:35px 0;font-size:10px;color:var(--muted);letter-spacing:1px}.login-page{min-height:100vh;display:grid;place-items:center;padding:24px}.login-card{width:min(440px,100%);background:var(--panel);border:1px solid var(--border);border-radius:22px;padding:35px}.login-card h1{font-size:28px;margin-top:28px}.login-card p{color:var(--muted);line-height:1.6}.login-card label{display:block;margin-top:22px;margin-bottom:10px;font-size:13px}.login-card button{width:100%;margin-top:20px;background:var(--accent);color:#103328}.login-card .error{font-size:13px}
@media(min-width:1800px){.media-block video{height:340px}}@media(max-width:1000px){.publication-grid{grid-template-columns:1fr}.filters{grid-template-columns:repeat(2,minmax(0,1fr))}.workflow{display:none}.media-block video{height:360px}.card-body{grid-template-columns:220px 1fr}}@media(max-width:600px){.portal-header{padding:16px}.portal-brand{font-size:27px}.portal-brand small,.header-tools>span{display:none}.header-tools button{font-size:11px;padding:8px}.portal-main{padding:0 16px}.hero{padding-top:30px}.hero>p{font-size:14px}.metrics{gap:22px}.filters{padding:12px}.search-label{grid-column:1/-1}.filters>label:last-child{grid-column:1/-1}.card-body{grid-template-columns:1fr;padding:14px}.media-block video{height:320px}.file-info{margin-bottom:6px}.description-field{height:200px}.card-header{padding:14px}.card-header h3{font-size:13px}.card-bottom{padding:0 14px 14px}footer{display:block;line-height:2}footer span{display:block}}
