:root{--ground:#f1f3f5;--surface:#fff;--sunken:#f7f8fa;--ink:#14181c;--ink-soft:#59626c;--ink-faint:#8b939c;--line:#e2e6ea;--line-strong:#c6cdd4;--blue:#3b79a3;--blue-dark:#2e6183;--blue-soft:#e8f1f7;--gold:#f3cd00;--gold-soft:#fff7ce;--good:#2c7a57;--good-soft:#e3f1ea;--warn:#9c5716;--warn-soft:#f9eee1;--bad:#a33b3b;--bad-soft:#f7e9e9;--radius:10px;--radius-control:8px;--measure:34rem;--ballot-bar:4.2rem;--measure-wide:75rem;--font-body:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", sans-serif}*{box-sizing:border-box}html{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}body{background:var(--ground);color:var(--ink);font-family:var(--font-body);-webkit-text-size-adjust:100%;margin:0;font-size:17px;line-height:1.5}h1,h2,h3{letter-spacing:-.015em;text-wrap:balance;margin:0;font-weight:800}h1{font-size:1.6rem;line-height:1.15}h2{font-size:1.15rem;line-height:1.25}h3{font-size:1rem}p{margin:0}a{color:var(--blue)}.muted{color:var(--ink-soft);font-size:.9rem}.faint{color:var(--ink-faint);font-size:.82rem}.eyebrow{letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint);font-size:.7rem;font-weight:700}.num{font-variant-numeric:tabular-nums}.stack{flex-direction:column;display:flex}.stack-1{gap:.25rem}.stack-2{gap:.5rem}.stack-3{gap:.85rem}.stack-4{gap:1.35rem}.stack-5{gap:2.25rem}main{padding:1.5rem 1rem}.page{max-width:var(--measure);margin:0 auto;padding:0 1rem}.page-body{padding-top:1.75rem}.goldrule{background:var(--gold);height:5px}.brand{background:var(--surface);border-bottom:1px solid var(--line);padding:1.1rem 0 1.2rem}.brand-logo{aspect-ratio:456/132;object-fit:contain;width:7.94rem;max-width:100%;height:2.3rem;display:block}.signin{background:var(--ground);flex-direction:column;justify-content:center;align-items:center;gap:1.1rem;min-height:100vh;display:flex}.signin-card{width:100%;max-width:25rem;padding:1.5rem}.signin-legal{gap:1.1rem;margin:0;padding:0;font-size:.82rem;list-style:none;display:flex}.signin-legal a{color:var(--ink-faint);text-decoration:none}.signin-legal a:hover{color:var(--blue);text-decoration:underline}.site-footer{border-top:1px solid var(--line);color:var(--ink-faint);margin-top:3rem;padding:1.1rem 0 2rem;font-size:.82rem}.site-footer ul{flex-wrap:wrap;gap:1.1rem;margin:0;padding:0;list-style:none;display:flex}.site-footer a{color:var(--ink-soft)}label{font-size:.95rem;font-weight:600;display:block}input:not([type]),input[type=text],input[type=email],input[type=tel],input[type=url],input[type=number],input[type=search],input[type=password],input[type=date],input[type=time],input[type=datetime-local],input[type=file],textarea,select{width:100%;font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-control);padding:.6rem .7rem;font-size:16px}textarea{resize:vertical;min-height:5.5rem;line-height:1.45}input::placeholder,textarea::placeholder{color:var(--ink-faint)}input[aria-invalid=true],textarea[aria-invalid=true],select[aria-invalid=true]{border-color:var(--bad);background:var(--bad-soft)}input:focus-visible,textarea:focus-visible,select:focus-visible,button:focus-visible,summary:focus-visible,a:focus-visible{outline:3px solid var(--gold);outline-offset:1px}button{font:inherit;cursor:pointer;border-radius:var(--radius-control)}.btn{background:var(--blue);color:var(--surface);border:1px solid var(--blue);padding:.75rem 1.1rem;font-weight:600}.btn:not(:disabled):hover{background:var(--blue-dark);border-color:var(--blue-dark)}.btn-block{width:100%}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:1rem}hr.rule{border:none;border-top:1px solid var(--line);margin:0}.modal{border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--surface);width:calc(100% - 2rem);max-width:34rem;color:var(--ink);padding:1.5rem}.modal::backdrop{background:var(--ink);opacity:.45}.modal h2{margin:0}.notice{border:1px solid var(--line);border-radius:var(--radius-control);border-left-width:4px;padding:.65rem .85rem;font-size:.95rem}.notice-bad{background:var(--bad-soft);border-color:var(--bad)}.notice-info{background:var(--blue-soft);border-color:var(--blue)}.badge{white-space:nowrap;border:1px solid #0000;border-radius:999px;align-items:center;gap:.35rem;padding:.1rem .55rem;font-size:.78rem;font-weight:700;display:inline-flex}.badge:before{content:"";background:currentColor;border-radius:50%;width:.45rem;height:.45rem}.badge-on{color:var(--good);background:var(--good-soft)}.badge-off{color:var(--ink-soft);background:var(--sunken);border-color:var(--line-strong)}.badge-warn{color:var(--warn);background:var(--warn-soft)}.internal .page{max-width:var(--measure-wide)}.internal main{padding-bottom:3rem}.crumbs{font-size:.9rem}.crumbs a{color:var(--ink-soft);text-decoration:none}.crumbs a:hover{color:var(--blue);text-decoration:underline}.admin-bar{padding:.5rem 0}.admin-bar-row{flex-wrap:wrap;align-items:center;gap:.6rem 1.2rem;display:flex}.admin-brand{flex:none;display:block}.admin-menu ul{flex-wrap:wrap;gap:.15rem;margin:0;padding:0;list-style:none;display:flex}.admin-menu a{color:var(--ink-soft);border-radius:999px;padding:.3rem .7rem;font-size:.95rem;font-weight:600;text-decoration:none;display:block}.admin-menu a:hover{color:var(--blue-dark);background:var(--sunken)}.admin-menu a[aria-current=page]{color:var(--blue-dark);background:var(--blue-soft)}.admin-account{align-items:center;gap:.6rem;margin-left:auto;display:flex}.pagehead-card{padding:1.25rem}.pagehead{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.6rem 1rem;display:flex}.pagehead-action{flex:none}.pagehead-action .btn{padding:.5rem .9rem;font-size:.9rem}.actions{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.actions-end,.internal .actions{justify-content:flex-end}.internal .outside-quote .actions{justify-content:flex-start}.status-card{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.6rem 1.5rem;display:flex}.status-card-state{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.outside-quote{background:var(--ground);border:1px solid var(--line);border-radius:var(--radius);padding:1.5rem 1rem}.outside-quote-body{max-width:var(--measure);margin:0 auto}.field{flex-direction:column;gap:.3rem;display:flex}.hint,.field-problem{font-size:.85rem}.hint{color:var(--ink-soft)}.field-problem{color:var(--bad)}.field-row{flex-wrap:wrap;gap:.85rem;display:flex}.field-row .field{flex:12rem}.field-narrow input{max-width:12rem}.field-row .field-narrow{flex:0 12rem}.setting-row{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) 22rem;align-items:start;gap:1.5rem;padding:.9rem 0;display:grid}.setting-row:first-child{border-top:none;padding-top:0}.setting-row-text{max-width:var(--measure);flex-direction:column;gap:.3rem;display:flex}.setting-row-field{align-items:center;gap:.6rem;display:flex}input.setting-input-count{max-width:8rem}input.setting-input-text{max-width:var(--measure)}.setting-unit{white-space:nowrap}@media (max-width:60rem){.setting-row{grid-template-columns:minmax(0,1fr);gap:.4rem}}.missing{color:var(--warn);font-size:.85rem;font-weight:600}.table-scroll{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);overflow-x:auto}.list-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.list-card .table-scroll{border-radius:0 0 var(--radius) var(--radius);border:none}.list-card-head{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.6rem 1.5rem;padding:.6rem .8rem;display:flex}.list-card-title{color:var(--ink-soft);margin:0;font-size:.85rem;font-weight:600}.list-card-empty{margin:0;padding:1rem .8rem}.list-filter{flex-wrap:wrap;align-items:center;gap:.6rem 1rem;display:flex}.list-filter-field{align-items:center;gap:.45rem;display:flex}.list-filter-field label{font-size:.85rem}.list-filter select{width:auto;min-width:10rem;padding:.35rem .5rem}.list-filter .btn-quiet{padding-block:.35rem}.grid{border-collapse:collapse;width:100%;min-width:32rem;font-size:.95rem}.grid caption{text-align:left;border-bottom:1px solid var(--line);color:var(--ink-soft);padding:.7rem .8rem;font-size:.85rem;font-weight:600}.grid th,.grid td{text-align:left;vertical-align:top;border-bottom:1px solid var(--line);padding:.45rem .8rem}.grid thead th{background:var(--sunken);border-bottom:1px solid var(--line-strong);color:var(--ink-faint);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;font-size:.72rem;font-weight:700}.grid tbody tr:last-child th,.grid tbody tr:last-child td{border-bottom:none}.grid tbody tr:hover{background:var(--blue-soft)}.grid tr.is-fresh{background:var(--blue-soft);box-shadow:inset 3px 0 0 var(--gold)}.grid tr.is-inactive{background:var(--sunken);color:var(--ink-soft)}.grid tr.is-inactive:hover{background:var(--blue-soft)}.honeypot{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.as-institution{background:var(--blue-soft);border-left:3px solid var(--blue);border-radius:0 var(--radius-control) var(--radius-control) 0;padding:.7rem .85rem}.as-institution strong{font-size:1.02rem}.section-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:1.1rem 1rem}.section-head{align-items:baseline;gap:.7rem;margin-bottom:.9rem;display:flex}.section-num{background:var(--blue);width:1.55rem;height:1.55rem;color:var(--surface);border-radius:999px;flex:none;place-items:center;font-size:.78rem;font-weight:700;display:grid}.field-label{font-size:.95rem;font-weight:600;display:block}.req{color:var(--blue);font-weight:700}.opt{color:var(--ink-faint);font-size:.85rem;font-weight:400}.choice{background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-control);cursor:pointer;align-items:flex-start;gap:.6rem;padding:.6rem .7rem;font-weight:400;display:flex}.choice input{width:1.15rem;height:1.15rem;accent-color:var(--blue);flex:none;margin:.2rem 0 0}.choice-on{border-color:var(--blue);background:var(--blue-soft)}.choice span{font-size:.95rem}.line-item{padding:.9rem 0}.line-item+.line-item{border-top:1px solid var(--line)}.line-item-head{justify-content:space-between;align-items:baseline;margin-bottom:.55rem;display:flex}.line-item-label{color:var(--ink-faint);letter-spacing:.08em;font-size:.72rem}.amount-field input{text-align:right;font-variant-numeric:tabular-nums;max-width:11rem;padding-right:2rem}.euro{width:11rem;position:relative}.euro:after{content:"€";color:var(--ink-soft);pointer-events:none;position:absolute;bottom:.6rem;right:.7rem}.note{background:var(--warn-soft);color:var(--warn);border-radius:var(--radius-control);padding:.7rem .85rem;font-size:.88rem}.completeness{background:var(--gold-soft);border:1px solid var(--line);border-radius:var(--radius);padding:1rem}.completeness ul{margin:0;padding-left:1.1rem}.meter{border-radius:var(--radius-control);background:var(--line);height:7px;overflow:hidden}.meter-fill{background:var(--gold);height:100%;display:block}.meter-fill-0{width:0}.meter-fill-1{width:16.66%}.meter-fill-2{width:33.33%}.meter-fill-3{width:50%}.meter-fill-4{width:66.66%}.meter-fill-5{width:83.33%}.meter-fill-6{width:100%}.privacy-note{color:var(--ink-soft);font-size:.82rem}.submit-block{background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius);padding:1rem}.sumline{justify-content:space-between;align-items:baseline;gap:.6rem;display:flex}.sumline b{font-size:1.45rem}.sumitems{color:var(--ink-soft);font-size:.85rem}.btn-big{padding:.95rem 1.2rem;font-size:1.05rem}.btn-ghost{background:var(--surface);width:100%;color:var(--blue);border:1px dashed var(--line-strong);border-radius:var(--radius-control);padding:.7rem 1rem;font-weight:600}.btn-ghost:hover{border-color:var(--blue)}.linkbox{background:var(--sunken);border:1px dashed var(--line-strong);border-radius:var(--radius-control);overflow-wrap:anywhere;padding:.7rem;font-size:.95rem}.external-link{overflow-wrap:anywhere}.btn-quiet{background:var(--surface);color:var(--ink);border:1px solid var(--line-strong);border-radius:var(--radius-control);padding:.25rem .6rem;font-size:.85rem;font-weight:600}.btn-quiet:not(:disabled):hover{border-color:var(--blue);color:var(--blue-dark)}.ballot{flex-direction:column;margin:0 -1rem;display:flex}.ballot-bar{height:var(--ballot-bar);z-index:2;background:var(--surface);border-top:1px solid var(--line);border-bottom:1px solid var(--line);flex-direction:column;gap:.3rem;padding:.5rem 1rem .55rem;display:flex;position:sticky;top:0}.ballot-sums{justify-content:space-between;align-items:baseline;gap:.5rem;font-size:.82rem;display:flex}.ballot-sums b{font-size:.95rem}.ballot-meter{border-radius:var(--radius-control);background:var(--line);height:8px;position:relative;overflow:hidden}.ballot-meter-spent,.ballot-meter-over,.ballot-meter-mark{position:absolute;top:0;bottom:0}.ballot-meter-spent{background:var(--blue);left:0}.ballot-meter-over{background:var(--gold)}.ballot-meter-mark{background:var(--ink-faint);width:2px}.ballot-head{top:var(--ballot-bar);z-index:1;background:var(--sunken);border-top:1px solid var(--line);border-bottom:1px solid var(--line);justify-content:space-between;align-items:baseline;gap:.6rem;padding:.45rem 1rem;font-size:.95rem;display:flex;position:sticky}.ballot-rationale{background:var(--surface);color:var(--ink-soft);padding:.7rem 1rem 0;font-size:.84rem}.ballot-item{background:var(--surface);cursor:pointer;-webkit-tap-highlight-color:transparent;align-items:flex-start;gap:.7rem;padding:.8rem 1rem;display:flex}.ballot-item+.ballot-item{border-top:1px solid var(--line)}.ballot-item.is-on{background:var(--blue-soft)}.ballot-item.is-blocked{opacity:.5;cursor:default}.ballot-item input{width:24px;height:24px;accent-color:var(--blue);flex:none;margin:.1rem 0 0}.ballot-title{font-weight:700;line-height:1.25}.ballot-price{flex-wrap:wrap;align-items:baseline;gap:.5rem;display:flex}.ballot-price b{font-size:1.15rem}.ballot-note{background:var(--warn-soft);color:var(--warn);border-radius:var(--radius-control);padding:.3rem .45rem;font-size:.78rem}.ballot .submit-block{margin:.9rem 1rem 0}.qr{max-width:20rem}.qr svg{width:100%;height:auto;display:block}.ticklist{color:var(--ink-faint);flex-wrap:wrap;gap:.3rem 1rem;margin:0;padding:0;list-style:none;display:flex}.ticklist li{gap:.35rem;font-size:.9rem;display:flex}.ticklist li.is-done{color:var(--ink)}.grid.funding{font-size:1rem}.grid.funding td,.grid.funding th{vertical-align:middle}.grid.funding tr.is-on,.grid.funding tbody tr.is-on:hover{background:var(--blue-soft)}.grid.funding tr.is-budget-edge td,.grid.funding tr.is-budget-edge th{border-bottom:2px dashed var(--line-strong)}.grid.funding tr.is-not-admitted{background:var(--sunken);color:var(--ink-soft)}.grid.funding input[type=checkbox]{width:20px;height:20px;accent-color:var(--blue);margin:0}.funding-title{font-weight:700}.funding-reason{color:var(--warn);font-size:.8rem;display:block}.funding-amount{text-align:right;width:7rem;padding:.3rem .45rem;font-size:1rem}.funding-bar{z-index:2;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.8rem;padding:.8rem 1rem;display:flex;position:sticky;bottom:0}.funding-bar .sumline{flex:18rem}@keyframes appear-late{to{visibility:visible}}.delayed{visibility:hidden;animation:0s linear .25s forwards appear-late}.btn:disabled,.btn-quiet:disabled{cursor:default;opacity:.6}
