*,*:before,*:after{box-sizing:border-box}body{margin:0;font-family:system-ui,sans-serif;background:#f6f7f9;color:#1a1a1a}:root{--page-width: 1440px;--text-width: 760px;--gutter: clamp(16px, 4vw, 48px)}.container{max-width:var(--page-width);margin:0 auto;padding:clamp(16px,3vw,32px) var(--gutter)}.narrow,.terms,.property-form{max-width:var(--text-width)}img,video{max-width:100%}.buttons{display:flex;flex-wrap:wrap;gap:12px}button,.button{display:inline-block;padding:10px 18px;margin-right:8px;border:none;border-radius:6px;font-size:1rem;text-decoration:none;color:#fff;background:#333;cursor:pointer}button.secondary{background:#888}.bankid{background:#39134c}.vipps{background:#ff5b24}.test{background:#2f6f4f}.muted{color:#666;font-size:.9rem}.terms{margin:16px 0 24px;padding:16px;background:#fff;border-radius:8px;border:1px solid #ddd}.terms-item{display:flex;gap:10px;align-items:flex-start;margin:12px 0;line-height:1.4}.terms-item input{margin-top:4px}button:disabled{background:#bbb;cursor:not-allowed}.admin-card{margin:16px 0;padding:16px;background:#fff;border:1px solid #ddd;border-radius:8px}.admin-card-header{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;margin-bottom:12px}.admin-row{display:flex;flex-wrap:wrap;gap:16px;align-items:flex-end}.field{display:block;margin:10px 0;font-size:.9rem}.field input,.field textarea{display:block;width:100%;box-sizing:border-box;margin-top:4px;padding:8px;font:inherit;border:1px solid #ccc;border-radius:6px}.field.small{width:120px;max-width:100%}.check{display:flex;gap:6px;align-items:center;margin:10px 0}.check.warn{color:#8a4b00}.topbar{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px}.brand{display:flex;align-items:center;gap:clamp(10px,1.5vw,16px)}.brand .logo{flex:none;width:clamp(36px,2vw + 28px,48px);height:auto}.topbar h1{margin:0;font-size:clamp(1.5rem,1.2rem + 1.5vw,2rem)}.tagline{margin:4px 0 0;color:#666}.topbar-user{display:flex;align-items:center;gap:12px}.topbar-user button{margin-right:0}.tabs{display:flex;gap:4px;margin:8px 0 20px;border-bottom:1px solid #ddd;overflow-x:auto;scrollbar-width:none}.tabs .tab{flex:none;margin:0;padding:8px 14px;background:none;color:#444;border-radius:6px 6px 0 0;border-bottom:2px solid transparent}.tabs .tab.active{color:#1a1a1a;font-weight:600;border-bottom-color:#1a1a1a}.dropzone{padding:32px 16px;text-align:center;background:#fff;border:2px dashed #bbb;border-radius:8px;cursor:pointer}.dropzone.dragging{border-color:#2f6f4f;background:#eef7f1}.dropzone.disabled{cursor:progress}.progress{height:8px;max-width:360px;margin:0 auto;background:#e5e5e5;border-radius:4px;overflow:hidden}.progress-bar{height:100%;background:#2f6f4f;transition:width .2s}.upload-results{padding-left:0;list-style:none}button.link-danger{margin:0;padding:0;background:none;color:#b00020;text-decoration:underline}.success{color:#1b6e3a}.error{color:#b00020}table{width:100%;margin-top:8px;border-collapse:collapse;font-size:.9rem}th,td{text-align:left;padding:6px 8px;border-bottom:1px solid #ddd;overflow-wrap:break-word}th,td.actions{white-space:nowrap}.field.grow{flex:1;min-width:160px}button.link{margin:0 0 8px;padding:0;background:none;color:#333;text-decoration:underline}.property-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:12px;margin:16px 0;padding:0;list-style:none}button.property-item{display:flex;flex-direction:column;justify-content:space-between;gap:8px;width:100%;height:100%;margin:0;padding:14px 16px;text-align:left;color:inherit;background:#fff;border:1px solid #ddd}button.property-item:hover{border-color:#999}.property-header{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px}.property-header{margin-bottom:16px}.property-header h2{margin:0}.property-header .buttons{align-items:center}.warn{color:#8a4b00}.checklist ul{margin:12px 0 0;padding:0;list-style:none}.checklist li{display:flex;gap:10px;margin:8px 0}.icon{flex:none;width:20px;height:20px}.checklist .icon{margin-top:1px}.icon-found{color:#1b6e3a}.icon-not-found{color:#9aa0a6}.checklist .source{font-size:.85rem}ul.sections{margin:0;padding-left:0;list-style:none}ul.sections li+li{margin-top:4px}button.link-small{min-height:0;margin:0;padding:0;background:none;color:#555;font-size:.8rem;text-decoration:underline}button.link-small:hover{color:#1a1a1a}.section-type select{max-width:100%;padding:4px 6px;font:inherit;font-size:.9rem;border:1px solid #ccc;border-radius:6px}.address-field{position:relative}.suggestions{position:absolute;z-index:10;top:100%;left:0;right:0;max-height:320px;margin:4px 0 0;padding:4px 0;overflow-y:auto;list-style:none;background:#fff;border:1px solid #ccc;border-radius:6px;box-shadow:0 6px 16px #0000001f}.suggestions li{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 12px;padding:8px 12px;cursor:pointer}.suggestions li.active{background:#eef2f5}.matrikkel{margin:4px 0 0}.property-layout{display:grid;gap:0 32px}.property-aside .checklist,.property-main h3{margin-top:0}@media(min-width:1024px){.property-layout{grid-template-columns:minmax(0,1fr) minmax(300px,380px);grid-template-areas:"main aside";align-items:start}.property-main{grid-area:main}.property-aside{grid-area:aside;position:sticky;top:16px}}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,520px),1fr));gap:0 16px;align-items:start}td.actions{text-align:right}@media(max-width:640px){.topbar-user{width:100%;justify-content:space-between}button,.button{min-height:44px}button.link,button.link-danger,button.link-small{min-height:0;padding:6px 0}.buttons .button,.buttons button:not(.link-danger){flex:1 1 auto;text-align:center}.dropzone{padding:24px 12px}.responsive-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.responsive-table,.responsive-table tbody,.responsive-table tr,.responsive-table td{display:block;width:100%}.responsive-table tr{margin-bottom:12px;padding:8px 12px;background:#fff;border:1px solid #ddd;border-radius:8px}.responsive-table td{display:grid;grid-template-columns:7.5em minmax(0,1fr);gap:8px;padding:6px 0;border-bottom:1px solid #eee}.responsive-table td:last-child{border-bottom:none}.responsive-table td[data-label]:before{content:attr(data-label);color:#666;font-size:.85rem}.responsive-table td.actions{display:block;text-align:left}}
