*{box-sizing:border-box}
body{margin:0;font:16px/1.5 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;color:#1b1f24;background:#f4f6f8}
main{max-width:920px;margin:0 auto;padding:16px}
h1{font-size:1.6rem;line-height:1.25;margin:.4em 0}
h2{font-size:1.2rem;margin:0 0 .6em}
h3{font-size:1.05rem;margin:1.2em 0 .4em}
.lead{font-size:1.05rem}
.card{background:#fff;border:1px solid #d5dbe1;border-radius:10px;padding:16px 18px;margin:14px 0}
.card.small{font-size:.9rem;color:#3d4650}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:10px 16px}
label{display:flex;flex-direction:column;gap:4px;font-weight:600;font-size:.95rem}
label small{font-weight:400;color:#5a6470}
label.check{flex-direction:row;align-items:center;font-weight:600}
label.inline{display:inline-flex;font-weight:400}
input,select,textarea,button{font:inherit}
input,select{padding:7px 9px;border:1px solid #9aa5b1;border-radius:6px;background:#fff;color:inherit}
input:focus,select:focus,textarea:focus,button:focus,a:focus{outline:3px solid #1a5fb4;outline-offset:2px}
.punkte{display:flex;flex-direction:column;gap:8px}
.pk{flex-direction:row;justify-content:space-between;align-items:center;gap:12px;font-weight:400;border-bottom:1px solid #eef1f4;padding:4px 0}
.pk[hidden]{display:none}
.pk select{min-width:120px}
.hint{color:#4a5560;font-size:.92rem}
.result{border-color:#1a5fb4;border-width:2px}
.verdict{font-size:1.1rem}
.ok{color:#14682f;font-weight:700}.warn{color:#8a5300;font-weight:700}.bad{color:#b3141f;font-weight:700}
table{border-collapse:collapse;width:100%}
.rows th,.rows td{border-top:1px solid #e3e7eb;padding:6px 8px;text-align:left;vertical-align:top}
.rows th{width:44%;font-weight:600}
.note{background:#fff7e0;border-left:4px solid #c98a00;padding:8px 10px}
textarea{width:100%;padding:8px;border:1px solid #9aa5b1;border-radius:6px;font:14px/1.45 ui-monospace,Menlo,Consolas,monospace}
.row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
button,.btn{display:inline-block;padding:8px 14px;border-radius:6px;border:1px solid #1a5fb4;background:#1a5fb4;color:#fff;text-decoration:none;cursor:pointer;font-weight:600}
.ghost{background:#fff;color:#1a5fb4}
.mini{padding:3px 8px;font-size:.85rem}
.upsell{background:#eef4fc;border-radius:8px;padding:10px 12px}
.upsell .btn{margin:6px 6px 0 0}
.feat li{margin:3px 0}
.file{display:inline-flex;flex-direction:row;align-items:center;gap:6px;font-weight:600;color:#1a5fb4}
.file input{font-size:.85rem}
.counts{font-weight:600}
.reg th,.reg td{border-top:1px solid #e3e7eb;padding:5px 6px;text-align:left;font-size:.92rem}
.st-frei,.st-ausserhalb,.st-altware{color:#14682f}.st-rueckfrage{color:#8a5300}.st-sperren{color:#b3141f;font-weight:700}
#printzone{display:none}
@media print{body.printing main{display:none}body.printing #printzone{display:block;font-size:11px}#printzone th,#printzone td{border:1px solid #999;padding:3px 5px;text-align:left}}
