:root{--korostus: #1d5fd1;--korostus-tumma: #163f8c;--korostus-vaalea: #e8f0fd;--tausta: #f5f6f8;--pinta: #ffffff;--reuna: #dfe3e8;--reuna-hento: #e6e9ee;--teksti: #1b1f24;--hento: #5b6470;--vihrea: #1e7a46;--punainen: #b42318;--oranssi: #8a4f00;--fontti: Inter, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}body{background:var(--tausta);color:var(--teksti);font-family:var(--fontti)}a{color:var(--korostus)}a:hover{color:var(--korostus-tumma)}h1,h2,h3{color:var(--teksti)}.piilotettu{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.hento{color:var(--hento)}.pieni{font-size:13px}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px}.lista{margin:0;padding-left:18px}.lataa{display:flex;align-items:center;gap:10px;padding:24px;color:var(--hento)}.sivupalkki{width:232px;height:100%;min-height:100vh;background:var(--pinta);border-right:1px solid var(--reuna);display:flex;flex-direction:column;padding:20px 14px;gap:6px}.sivupalkki-sisus{height:100%;min-height:0}.logo{display:flex;align-items:center;gap:10px;padding:4px 8px 16px;color:var(--teksti);text-decoration:none}.logo strong{font-size:15px;display:block}.logo span{font-size:12px;color:var(--hento)}.paanappi{display:flex;align-items:center;justify-content:center;gap:8px;height:40px;border-radius:8px;background:var(--korostus);color:#fff!important;font-weight:600;font-size:14px;text-decoration:none;margin-bottom:12px}.paanappi:hover{background:var(--korostus-tumma)}.valikko{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.valikko a{display:flex;align-items:center;justify-content:space-between;gap:8px;height:38px;padding:0 10px;border-radius:8px;font-size:14px;text-decoration:none;color:var(--teksti)}.valikko a:hover{background:var(--tausta)}.valikko a.active{background:var(--korostus-vaalea);color:var(--korostus-tumma);font-weight:600}.valikko .ikoni{display:inline-flex;align-items:center;gap:10px}.laskuri{min-width:20px;height:20px;border-radius:10px;background:#fff4e0;color:var(--oranssi);font-size:12px;font-weight:600;display:inline-flex;align-items:center;justify-content:center;padding:0 6px}.sivupalkki-ala{margin-top:auto;border-top:1px solid var(--reuna);padding:12px 8px 0;display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--hento)}.sivupalkki-ala a{text-decoration:none}.ylapalkki{height:64px;padding:0 32px;display:flex;align-items:center;gap:16px;background:var(--pinta);border-bottom:1px solid var(--reuna);position:sticky;top:0;z-index:10}.ylapalkki-haku{flex:1 1 auto;max-width:560px;min-width:0}.ylapalkki-kayttaja{margin-left:auto;display:flex;align-items:center;gap:12px;font-size:13px;color:var(--hento);white-space:nowrap}.avatar{width:34px;height:34px;border-radius:17px;background:var(--korostus-vaalea);color:var(--korostus-tumma);display:inline-flex;align-items:center;justify-content:center;font-weight:600;font-size:13px;flex-shrink:0}.sisalto{padding:28px 32px 48px;display:flex;flex-direction:column;gap:20px;min-width:0}@media(max-width:1279px){.ylapalkki-kayttaja .sposti{display:none}}@media(max-width:991px){.ylapalkki{padding:0 16px;gap:10px}.sisalto{padding:16px 16px 40px}}.sivuotsikko{display:flex;flex-direction:column;gap:8px}.sivuotsikko-rivi{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap}.sivuotsikko h1{margin:0;font-size:24px;font-weight:700;line-height:1.25}.sivuotsikko-kuvaus{margin-top:6px;color:var(--hento);font-size:14px}.sivuotsikko-oikea{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.murupolku{font-size:13px;color:var(--hento)}.kortti{background:var(--pinta);border:1px solid var(--reuna);border-radius:10px;padding:18px 20px;display:flex;flex-direction:column;gap:12px;min-width:0}.kortti-otsikko{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.kortti-otsikko h2{margin:0;font-size:16px;font-weight:600}.kortti-otsikko a{font-size:13px}.ruudukko-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.ruudukko-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}.ruudukko-projekti{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:16px;align-items:start}.ruudukko-velho{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:16px;align-items:start}.pino{display:flex;flex-direction:column;gap:16px;min-width:0}@media(max-width:1199px){.ruudukko-4{grid-template-columns:repeat(2,minmax(0,1fr))}.ruudukko-velho{grid-template-columns:minmax(0,1fr)}}@media(max-width:991px){.ruudukko-2,.ruudukko-projekti{grid-template-columns:minmax(0,1fr)}}@media(max-width:575px){.ruudukko-4{grid-template-columns:minmax(0,1fr)}}.tunnusluku{background:var(--pinta);border:1px solid var(--reuna);border-radius:10px;padding:18px}.tunnusluku-nimi{font-size:13px;color:var(--hento)}.tunnusluku-arvo{font-size:30px;font-weight:700;margin-top:6px;line-height:1.2}.tunnusluku-selite{font-size:13px;color:var(--hento);margin-top:4px}.arvo-punainen{color:var(--punainen)}.arvo-oranssi{color:var(--oranssi)}.huomio{display:flex;gap:12px;align-items:flex-start;padding:12px;border-radius:8px;font-size:14px}.huomio-laji{font-weight:700;font-size:13px;min-width:72px}.huomio-punainen{background:#fdecea}.huomio-punainen .huomio-laji{color:var(--punainen)}.huomio-oranssi{background:#fff4e0}.huomio-oranssi .huomio-laji{color:var(--oranssi)}.huomio-harmaa{background:var(--tausta)}.huomio-harmaa .huomio-laji{color:var(--hento)}.huomio-vihrea{background:#e7f4ec}.huomio-vihrea .huomio-laji{color:var(--vihrea)}.tehtavarivi{display:flex;flex-direction:column;gap:4px}.tehtavarivi-otsikko{display:flex;justify-content:space-between;gap:12px;font-size:14px;flex-wrap:wrap}.tapahtumat{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:8px;font-size:13px}.tapahtumat li{display:flex;gap:12px}.tapahtumat .aika{color:var(--hento);min-width:92px;flex-shrink:0}.merkit{display:inline-flex;flex-wrap:wrap;gap:6px}.merkki{display:inline-block;padding:2px 8px;border-radius:10px;font-size:12px;font-weight:600;line-height:18px;white-space:nowrap}.merkki-vihrea{background:#e7f4ec;color:#1e5a36}.merkki-harmaa{background:#f0f2f5;color:#3d4550}.merkki-punainen{background:#fdecea;color:#8f1c13}.merkki-sininen{background:var(--korostus-vaalea);color:var(--korostus-tumma)}.merkki-oranssi{background:#fff4e0;color:#6b3d00}.aineistopuu .ant-tree-node-content-wrapper{min-width:0}.puu-rivi{display:flex;justify-content:space-between;gap:12px;width:100%}.puu-maara{color:var(--hento);font-size:13px;font-variant-numeric:tabular-nums}.valinnat{display:flex;flex-direction:column;gap:10px}.valinta{display:flex;align-items:center;gap:16px;padding:14px 16px;border-radius:10px;font:inherit;color:var(--teksti);background:var(--pinta);border:1px solid var(--reuna);cursor:pointer;text-align:left;width:100%}.valinta:hover:not(:disabled){border-color:var(--korostus)}.valinta:focus-visible{outline:2px solid var(--korostus);outline-offset:2px}.valinta[aria-pressed=true],.valinta[aria-checked=true]{border:2px solid var(--korostus);padding:13px 15px;background:#f7faff}.valinta:disabled{background:var(--tausta);border:1px dashed #c9d0d8;opacity:.75;cursor:default}.valinta-ruutu{width:22px;height:22px;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:14px;flex-shrink:0;background:#fff;border:2px solid #8a94a0}.valinta[aria-pressed=true] .valinta-ruutu,.valinta[aria-checked=true] .valinta-ruutu{background:var(--korostus);border-color:var(--korostus);color:#fff}.valinta-radio .valinta-ruutu{border-radius:11px}.valinta-teksti{display:flex;flex-direction:column;gap:3px;flex:1 1 auto;min-width:0}.valinta-teksti strong{font-size:15px}.valinta-teksti span{font-size:13px;color:var(--hento)}.valinta-hinta{display:flex;flex-direction:column;align-items:flex-end;gap:3px;font-size:13px;text-align:right;flex-shrink:0}.valinta-hinta strong{font-size:14px}.valinta-lisa{margin:-4px 0 4px 54px}@media(max-width:575px){.valinta{flex-wrap:wrap}.valinta-hinta{align-items:flex-start;text-align:left;width:100%;padding-left:38px}.valinta-lisa{margin-left:0}}.arvorivit{margin:0;display:flex;flex-direction:column;gap:8px;font-size:14px}.arvorivit>div{display:flex;justify-content:space-between;gap:12px}.arvorivit dt{color:var(--hento)}.arvorivit dd{margin:0;font-weight:600;text-align:right}.selite{font-size:12px;color:var(--hento);line-height:1.5}.laatikko{padding:10px 12px;border-radius:8px;font-size:13px;background:var(--tausta)}.laatikko-oranssi{background:#fff4e0;color:#6b3d00}.laatikko-vihrea{background:#e7f4ec;color:#1e5a36}.nappirivi{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.hyvaksyntakortti{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1.2fr) auto;gap:16px;align-items:center;padding:14px 16px;border:1px solid var(--reuna);border-radius:10px}@media(max-width:991px){.hyvaksyntakortti{grid-template-columns:minmax(0,1fr)}}.ohjevaiheet{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:14px;font-size:14px}.ohjevaiheet li::marker{font-weight:700;color:var(--korostus)}.ant-drawer .sivupalkki{width:100%;min-height:100%;border-right:0}
