*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #0f0f0f;--surface: #1a1a1a;--surface-2: #222;--border: #2a2a2a;--border-hover: #3a3a3a;--text: #e4e4e4;--text-muted: #777;--text-dim: #aaa;--accent: #c8f542;--accent-dim: rgba(200, 245, 66, .1);--accent-border: rgba(200, 245, 66, .25);--red: #ef4444;--orange: #f97316;--green: #22c55e;--radius: 10px;--sans: "DM Sans", system-ui, sans-serif;--serif: "Playfair Display", Georgia, serif}html{scroll-behavior:smooth}body{font-family:var(--sans);background:var(--bg);color:var(--text);min-height:100vh;display:flex;flex-direction:column;font-size:15px;line-height:1.6}header{border-bottom:1px solid var(--border);padding:1.5rem}.header-inner{max-width:1140px;margin:0 auto;display:flex;align-items:baseline;gap:1.25rem;flex-wrap:wrap}.logo-link{text-decoration:none}header h1{font-family:var(--serif);font-size:1.6rem;font-weight:600;color:var(--accent);letter-spacing:-.01em}.tagline{color:var(--text-muted);font-size:.85rem}main{flex:1;max-width:1140px;margin:0 auto;padding:2rem 1.5rem;width:100%}.logo-chip{display:inline-flex;align-items:center;gap:6px;background:var(--surface-2);border:1px solid var(--border);border-radius:99px;padding:3px 10px 3px 5px;font-size:.78rem;color:var(--text-dim);white-space:nowrap;vertical-align:middle}.logo-chip__img{border-radius:50%;object-fit:cover;flex-shrink:0;background:var(--border)}.logo-chip__name{font-weight:500;letter-spacing:.01em}.filters{display:flex;flex-direction:column;gap:.65rem;margin-bottom:1.5rem}.search-wrap{position:relative}#q{width:100%;padding:.7rem 1rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);font-family:var(--sans);font-size:.95rem;outline:none;transition:border-color .15s}#q:focus{border-color:var(--accent)}#q::placeholder{color:var(--text-muted)}.filter-row{display:flex;gap:.45rem;flex-wrap:wrap}select{padding:.5rem 2rem .5rem .8rem;background:var(--surface);border:1px solid var(--border);border-radius:8px;color:var(--text);font-family:var(--sans);font-size:.83rem;cursor:pointer;outline:none;transition:border-color .15s;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath fill='%23666' d='M0 0l5 6 5-6z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .65rem center}select:focus{border-color:var(--accent)}.results-header{margin-bottom:1rem;color:var(--text-muted);font-size:.82rem;letter-spacing:.02em;text-transform:uppercase}.results{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:.85rem}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.1rem 1.2rem;display:flex;flex-direction:column;gap:.55rem;cursor:pointer;transition:border-color .15s,transform .12s,background .15s;-webkit-user-select:none;user-select:none}.card:hover{border-color:var(--border-hover);background:#1e1e1e;transform:translateY(-2px)}.card:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.card-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.card-badges{display:flex;gap:.3rem;flex-wrap:wrap}.badge{font-size:.68rem;font-weight:600;padding:.18rem .5rem;border-radius:4px;background:var(--surface-2);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.badge-type{background:var(--accent-dim);color:var(--accent)}.badge-lg{font-size:.75rem;padding:.25rem .65rem;border-radius:6px}.badge-discipline{background:#ffffff0d;color:var(--text-dim)}.card-source{flex-shrink:0}.card-title{font-size:.97rem;font-weight:600;line-height:1.35;color:var(--text)}.card-org-row{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.card-via{display:inline-flex;align-items:center;gap:.3rem;font-size:.75rem;color:var(--text-muted)}.card-value{margin-left:auto;font-size:.82rem;color:var(--accent);font-weight:500;white-space:nowrap}.card-body{font-size:.82rem;color:#888;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.card-footer{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding-top:.6rem;border-top:1px solid var(--border)}.card-arrow{font-size:1rem;color:var(--text-muted);transition:transform .15s,color .15s}.card:hover .card-arrow{transform:translate(3px);color:var(--accent)}.close-date{font-size:.78rem;color:var(--text-muted)}.close-date.very-soon{color:var(--red);font-weight:600}.close-date.soon{color:var(--orange);font-weight:500}.close-date.open{color:var(--green)}.close-date.closed{color:var(--text-muted);text-decoration:line-through}.loading-state,.empty-state,.error-state,.detail-loading{grid-column:1 / -1;text-align:center;padding:5rem 2rem;color:var(--text-muted);font-size:.9rem}.error-state{color:var(--red)}.pagination{display:flex;justify-content:center;align-items:center;gap:.4rem;margin-top:2.5rem;flex-wrap:wrap}.page-btn{padding:.45rem .8rem;background:var(--surface);border:1px solid var(--border);border-radius:7px;color:var(--text);font-family:var(--sans);font-size:.83rem;cursor:pointer;transition:border-color .12s,background .12s}.page-btn:hover:not(:disabled){border-color:var(--border-hover);background:var(--surface-2)}.page-btn.active{background:var(--accent);color:#000;border-color:var(--accent);font-weight:600}.page-btn:disabled{opacity:.3;cursor:not-allowed}.page-ellipsis{color:var(--text-muted);padding:0 .25rem;font-size:.85rem}.detail-wrap{max-width:720px;margin:0 auto}.detail-back{display:inline-flex;align-items:center;gap:.4rem;color:var(--text-muted);text-decoration:none;font-size:.85rem;margin-bottom:2rem;transition:color .15s}.detail-back:hover{color:var(--accent)}.detail-meta-row{margin-bottom:1.5rem}.detail-chips{display:flex;gap:1.25rem;flex-wrap:wrap}.detail-chip-group{display:flex;flex-direction:column;gap:.35rem}.detail-chip-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-weight:600}.detail-title{font-family:var(--serif);font-size:clamp(1.6rem,4vw,2.4rem);font-weight:600;line-height:1.2;letter-spacing:-.02em;color:var(--text);margin-bottom:1.25rem}.detail-badges{display:flex;gap:.4rem;flex-wrap:wrap;margin-bottom:1.5rem}.detail-value{font-family:var(--serif);font-size:1.5rem;font-style:italic;color:var(--accent);margin-bottom:1.5rem;letter-spacing:-.01em}.detail-deadline{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.1rem 1.25rem;margin-bottom:2rem}.detail-deadline.very-soon{border-color:#ef44444d;background:#ef44440d}.detail-deadline.soon{border-color:#f973164d;background:#f973160d}.detail-deadline.open{border-color:#22c55e4d;background:#22c55e0d}.deadline-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-weight:600;margin-bottom:.3rem}.deadline-text{font-size:1rem;font-weight:600;color:var(--text)}.detail-deadline.very-soon .deadline-text{color:var(--red)}.detail-deadline.soon .deadline-text{color:var(--orange)}.detail-deadline.open .deadline-text{color:var(--green)}.deadline-bar{margin-top:.75rem;height:3px;background:var(--border);border-radius:2px;overflow:hidden}.deadline-bar-fill{height:100%;border-radius:2px;background:var(--text-muted);transition:width .6s ease}.deadline-bar-fill.very-soon{background:var(--red)}.deadline-bar-fill.soon{background:var(--orange)}.detail-body{color:var(--text-dim);font-size:.95rem;line-height:1.75;margin-bottom:2.5rem;border-left:2px solid var(--border);padding-left:1.25rem}.detail-body p+p{margin-top:1em}.detail-summary{font-size:1rem;color:var(--text);line-height:1.7;margin-bottom:1.75rem;padding:1.1rem 1.25rem;background:var(--surface);border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:var(--radius)}.detail-value-note{font-family:var(--sans);font-size:.85rem;font-style:normal;color:var(--text-muted);font-weight:400}.rounds-section{margin-bottom:2rem}.rounds-section__label{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-weight:600;margin-bottom:.65rem}.rounds-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.65rem}.round-card{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:.85rem 1rem;display:flex;flex-direction:column;gap:.3rem}.round-card__label{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}.round-card__date{font-size:.92rem;font-weight:600;color:var(--text)}.round-card__date.very-soon{color:var(--red)}.round-card__date.soon{color:var(--orange)}.round-card__date.open{color:var(--green)}.round-card__activity{font-size:.72rem;color:var(--text-muted);margin-top:.2rem}.round-card__notes{font-size:.72rem;color:var(--text-muted);font-style:italic}.ai-sections{display:flex;flex-direction:column;gap:.65rem;margin-bottom:2rem}.ai-section{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:1rem 1.1rem}.ai-section__title{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted);margin-bottom:.55rem}.ai-section__text{font-size:.9rem;color:var(--text-dim);line-height:1.6}.ai-section__list{list-style:none;display:flex;flex-direction:column;gap:.3rem}.ai-section__list li{font-size:.88rem;color:var(--text-dim);line-height:1.5;padding-left:1em;position:relative}.ai-section__list li:before{content:"·";position:absolute;left:0;color:var(--accent);font-weight:700}.ai-tags{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.5rem}.ai-tag{font-size:.7rem;font-weight:600;padding:.2rem .55rem;background:#c8f54214;border:1px solid var(--accent-border);border-radius:99px;color:var(--accent);letter-spacing:.03em}.ai-table{width:100%;border-collapse:collapse;font-size:.88rem}.ai-table tr+tr td{border-top:1px solid var(--border)}.ai-table td{padding:.4rem 0;color:var(--text-dim);line-height:1.4}.ai-table__amount{text-align:right;font-weight:600;color:var(--accent);white-space:nowrap;padding-left:1rem}.ai-meta-row{display:flex;flex-wrap:wrap;gap:1.25rem}.ai-meta-item{display:flex;flex-direction:column;gap:.2rem;font-size:.88rem;color:var(--text-dim)}.ai-meta-label{font-size:.68rem;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);font-weight:600}.ai-contacts{display:flex;flex-direction:column;gap:.65rem}.ai-contact{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem .75rem;font-size:.88rem}.ai-contact__name{font-weight:600;color:var(--text)}.ai-contact__role{color:var(--text-muted);font-size:.8rem}.ai-contact__link{color:var(--accent);text-decoration:none;font-size:.83rem}.ai-contact__link:hover{text-decoration:underline}.ai-resource-links{display:flex;flex-wrap:wrap;gap:.5rem}.ai-resource-link{display:inline-flex;align-items:center;gap:.3rem;padding:.4rem .85rem;border-radius:6px;font-size:.82rem;font-weight:600;text-decoration:none;border:1px solid var(--border);background:var(--surface-2);color:var(--text-dim);transition:border-color .12s,color .12s}.ai-resource-link:hover{border-color:var(--border-hover);color:var(--text)}.ai-resource-link--apply{background:var(--accent-dim);border-color:var(--accent-border);color:var(--accent)}.ai-resource-link--apply:hover{background:#c8f5422e}.detail-cta-wrap{display:flex;flex-direction:column;align-items:flex-start;gap:.6rem;padding-top:1.5rem;border-top:1px solid var(--border)}.detail-cta{display:inline-flex;align-items:center;gap:.75rem;background:var(--accent);color:#000;font-family:var(--sans);font-size:.95rem;font-weight:600;padding:.85rem 1.75rem;border-radius:8px;text-decoration:none;letter-spacing:-.01em;transition:opacity .15s,transform .12s}.detail-cta:hover{opacity:.88;transform:translateY(-1px)}.cta-arrow{display:inline-block;transition:transform .15s}.detail-cta:hover .cta-arrow{transform:translate(3px)}.detail-cta-note{font-size:.78rem;color:var(--text-muted)}footer{border-top:1px solid var(--border);padding:1.25rem 1.5rem;text-align:center;font-size:.78rem;color:var(--text-muted);margin-top:auto}@media (max-width: 600px){header{padding:1rem}main{padding:1.25rem 1rem}.results{grid-template-columns:1fr}.filter-row{flex-direction:column}select{width:100%}.detail-chips{flex-direction:column;gap:.75rem}}
