*{box-sizing:border-box}body{margin:0;background:#f5f3ed;color:#24362f;font:15px/1.65 Arial,sans-serif}a{color:inherit;text-underline-offset:4px}header{padding:24px 6%;display:flex;align-items:center;gap:36px;border-bottom:1px solid #ded9c9}header>form{margin-left:auto}.brand{font:32px Georgia,serif;text-decoration:none}.brand span{display:block;font:10px Arial;letter-spacing:4px;margin-top:8px}main{max-width:1240px;margin:0 auto;padding:60px 32px}h1{font:52px Georgia,serif;margin:12px 0 32px}h2{font:27px Georgia,serif;font-weight:400}.eyebrow{font-size:11px;letter-spacing:2px;text-transform:uppercase;color:#927544}.login{max-width:460px;margin:0 auto;padding:38px;background:#fff;border:1px solid #e2ded2}.card{padding:28px;background:#fff;border:1px solid #e2ded2;margin:24px 0}.tenants{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.tenant{text-decoration:none}.tenant span{font-size:12px;color:#816c42}.tabs{display:flex;gap:28px;border-bottom:1px solid #dad5c8;padding:18px 0}.tabs a{text-decoration:none}label{display:block;font-size:13px;margin:18px 0}input,select,textarea{display:block;width:100%;border:1px solid #c5c8bb;background:#fff;border-radius:3px;padding:12px;margin-top:7px;font:inherit}button{background:#293f34;color:#fff;border:0;padding:12px 20px;cursor:pointer;font:inherit;border-radius:3px}button:disabled{opacity:.5;cursor:default}.notice{background:#ede9dc;border-left:3px solid #a88c51;padding:16px;font-size:13px}details{margin-top:24px;font-size:12px}summary{cursor:pointer}.section-head,.account{display:flex;align-items:center;justify-content:space-between;gap:20px}.account{padding:15px 0;border-bottom:1px solid #ddd}.table{overflow:auto}table{border-collapse:collapse;width:100%;font-size:13px}th,td{text-align:left;padding:16px 12px;border-bottom:1px solid #e8e5db}small{display:block;color:#7e857c;margin-top:6px}.new{display:inline-block;background:#e4eddf;padding:2px 6px;font-size:10px}.card form{max-width:540px}footer{padding:32px 6%;font-size:11px;border-top:1px solid #ddd8c9}:focus-visible{outline:3px solid #b28b47;outline-offset:3px}@media(max-width:800px){.tenants{grid-template-columns:1fr}.tenant{margin:0}main{padding:36px 20px}h1{font-size:40px}.section-head,.account{align-items:flex-start;flex-direction:column}header{gap:20px}.login{padding:24px}}

/* Karrer Family login identity — visual layer only, 2026-09-22 */
body{background:#f6f4ed;color:#242b29}
header{min-height:104px;padding:15px 6%;border-color:#ded9cb;justify-content:space-between}
header .brand{display:flex;align-items:center;gap:14px;font:400 25px/1.3 Arial,sans-serif;letter-spacing:1px;white-space:nowrap}
header .brand::before{content:"";display:block;width:62px;height:70px;background:url('karrer-wappen.webp') center/contain no-repeat}
header .brand::after{content:" Family";margin-left:-7px}
header>span{font-size:11px;letter-spacing:2.5px;text-transform:uppercase;color:#8b713f}
body:has(.login) main{position:relative;max-width:1120px;min-height:710px;padding:70px 32px 80px;display:flex;align-items:center;justify-content:flex-end;isolation:isolate}
body:has(.login) main::before{content:"";position:absolute;z-index:-1;left:16px;top:40px;bottom:40px;width:46%;background:radial-gradient(ellipse at 50% 65%,#e8e2cc88,transparent 68%),url("login-gate.svg") center/contain no-repeat;pointer-events:none}
.login{width:100%;max-width:460px;margin:0 0 0 auto;padding:40px 42px;background:#fffdf7e6;border:1px solid #ddd6c3;box-shadow:0 18px 65px #293c3310}
.login h1{font:italic 52px/1.1 Georgia,serif;letter-spacing:-1.2px;margin:15px 0 24px;color:#263932}
.login .eyebrow{letter-spacing:3.5px;color:#8b713f}
.login>p:not(.eyebrow){color:#62675f;font-size:14px;line-height:1.8}
.login label{color:#414a43;font-size:12px;letter-spacing:.3px}
.login input{background:#fffefa;border:1px solid #cfcbbb;border-radius:0;min-height:48px}
.login button{width:100%;margin-top:8px;min-height:48px;border-radius:0;background:#263932;letter-spacing:1px;font-size:13px;transition:background .2s}
.login button:hover{background:#3e5143}
.login details{color:#62675f;margin-top:22px}
.login summary{padding:5px 0}
footer{border-color:#ded9cb;color:#62675f;text-align:right;letter-spacing:.5px}
:focus-visible{outline:2px solid #a88b4e;outline-offset:4px}
@media(max-width:760px){header{gap:16px}header .brand{font-size:20px;gap:10px}header .brand::before{width:47px;height:58px}header>span{font-size:9px;letter-spacing:1.5px}body:has(.login) main{padding:105px 20px 48px;min-height:0;display:block}body:has(.login) main::before{top:12px;left:50%;transform:translateX(-50%);width:240px;height:325px;bottom:auto;opacity:.7;background-position:center top}.login{position:relative;margin:auto;padding:30px 26px;background:#fffdf7f5}.login h1{font-size:43px}footer{text-align:center}}

/* Unified entrance: arch around crest and sign-in */
body:has(.login) main{max-width:760px;min-height:0;padding:120px 68px 64px;display:block}
body:has(.login) main::before{top:26px;bottom:22px;left:50%;transform:translateX(-50%);width:600px;background:url('login-arch.svg') center top/100% 100% no-repeat;opacity:1}
.login{max-width:430px;margin:0 auto;padding:0 30px 32px;background:transparent;border:0;box-shadow:none;text-align:center;position:relative}
.login::before{content:"";display:block;width:220px;height:110px;margin:0 auto 20px;background:url('karrer-wappen.webp') center/88px auto no-repeat,url('login-key.svg') right 8px center/55px 78px no-repeat}
.login .eyebrow{margin:0 0 8px}
.login h1{margin:8px 0 18px}
.login label,.login details{text-align:left}
.login>p:not(.eyebrow){margin-bottom:24px}
.login input{background:#fffdf8}
@media(max-width:760px){body:has(.login) main{padding:90px 28px 54px;max-width:600px}body:has(.login) main::before{top:22px;bottom:18px;width:calc(100% - 28px);height:auto;background-position:center top;opacity:1}.login{padding:0 18px 24px;background:transparent}.login::before{height:95px;width:185px;background-size:75px auto,45px 66px;background-position:center,right center}.login h1{font-size:40px}.login>p:not(.eyebrow){font-size:13px}}


/* Shared work queue */
.tenants{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.tenant{margin:16px 0;padding:23px}.tenant h2{font-size:23px;margin:8px 0;min-height:60px}.tenant .count{display:block;font:46px/1.2 Georgia,serif;margin:16px 0}.tenant span{display:block;line-height:1.5}.tenant.selected{border-color:#8b713f;box-shadow:inset 0 3px #8b713f}.intro{color:#62675f;max-width:750px}.task-link{font-weight:600}.tenant-label{font-size:11px;letter-spacing:.4px}.status-pill{white-space:nowrap;padding:5px 9px;background:#edf0e9;font-size:12px}.date{white-space:nowrap;color:#62675f}.pagination{display:flex;align-items:center;justify-content:center;gap:24px;padding-top:24px}.button-link{background:#263932;color:#fff;padding:10px 18px;text-decoration:none}.details-list{display:grid;grid-template-columns:minmax(130px,1fr) 2fr;max-width:800px}.details-list dt,.details-list dd{padding:10px 0;border-bottom:1px solid #e8e5db;margin:0;overflow-wrap:anywhere}.details-list dt{color:#62675f;padding-right:20px}.file-row{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:12px 0}.check{display:flex;gap:10px;align-items:flex-start}.check input{width:18px;min-height:18px;flex-shrink:0;margin:4px 0}.check{font-size:12px}.login:has(input[name=repeat]){padding-bottom:32px}body:has(input[name=repeat]) main{padding-top:95px}.login:has(input[name=repeat])::before{height:75px;margin-bottom:10px}
@media(max-width:1050px){.tenants{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.tenants{grid-template-columns:1fr}.tenant{margin:0 0 4px}.tenant h2{min-height:0}.tenant .count{font-size:36px;margin:10px 0}.card{padding:22px 18px}.details-list{display:block}.details-list dt{border:0;padding-bottom:0}.details-list dd{padding-top:0}.file-row{align-items:flex-start;flex-direction:column}.tabs{gap:24px}.table{margin:0 -10px}}
