:root{--ink:#1e1f22;--cream:#f4f1e8;--paper:#fffdf7;--sage:#cbd1b7;--olive:#3f4938;--line:rgba(30,31,34,.24);--pad:clamp(1rem,4vw,4rem)}
*{box-sizing:border-box}html{color-scheme:light}body{margin:0;background:#e9e7df;color:var(--ink);font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #536744;outline-offset:3px}h1,h2,h3{line-height:.96;letter-spacing:-.05em}.skip-link{position:absolute;left:-9999px}.skip-link:focus{left:1rem;top:1rem;z-index:5;background:#fff;padding:.8rem}.shell{width:min(100%,1320px);margin:auto;padding:clamp(2rem,6vw,6rem) var(--pad)}.brand img{width:170px;height:auto;display:block;margin-bottom:3rem}.label{margin:0 0 1rem;font-size:.74rem;font-weight:700;letter-spacing:.11em;text-transform:uppercase}.admin-header{display:flex;justify-content:space-between;align-items:flex-end;gap:2rem;padding-bottom:clamp(2rem,5vw,4rem);border-bottom:1px solid}.admin-header h1,.hero-title{margin:0;font-size:clamp(2.7rem,5.5vw,5.8rem)}.admin-nav,.actions{display:flex;gap:.8rem;flex-wrap:wrap;align-items:center}.button{display:inline-flex;align-items:center;justify-content:center;min-height:3.2rem;padding:.8rem 1.05rem;border:1px solid var(--ink);border-radius:0;background:var(--ink);color:var(--cream);font-weight:700;cursor:pointer}.button:hover{background:var(--olive)}.button-secondary{background:transparent;color:var(--ink)}.button-secondary:hover{background:var(--sage)}.button-danger{background:#7d2d2d;border-color:#7d2d2d}.text-link{display:inline-flex;padding-bottom:.18rem;border-bottom:1px solid;font-weight:700}.notice{margin:2rem 0;padding:1rem 1.2rem;border:1px solid;background:var(--sage)}.table-wrap{overflow:auto;margin-top:2rem}.contract-table{width:100%;min-width:760px;border-collapse:collapse;background:var(--paper)}.contract-table th,.contract-table td{padding:1rem;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.contract-table th{font-size:.72rem;letter-spacing:.08em;text-transform:uppercase}.status{display:inline-flex;padding:.28rem .5rem;border:1px solid;font-size:.7rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase}.status-signed{background:var(--olive);color:var(--cream)}.status-viewed{background:var(--sage)}.status-draft{background:var(--paper)}.contract-form{display:grid;gap:3rem;padding-top:3rem}.contract-form fieldset{margin:0;padding:0 0 3rem;border:0;border-bottom:1px solid var(--line)}.contract-form legend{margin-bottom:1.5rem;font-size:clamp(1.8rem,3vw,2.8rem);font-weight:700;letter-spacing:-.04em}.contract-form label{display:grid;gap:.5rem;font-size:.8rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.contract-form input,.contract-form textarea,.contract-form select,.login-form input,.sign-form input{width:100%;padding:.85rem .9rem;border:1px solid var(--ink);border-radius:0;background:var(--paper);color:var(--ink);font-size:1rem;font-weight:400;letter-spacing:0;text-transform:none}.contract-form textarea{resize:vertical}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem}.template-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--ink);border:1px solid}.template-option{position:relative;background:var(--paper);cursor:pointer}.template-option input{position:absolute;top:1rem;left:1rem;width:1.2rem;height:1.2rem}.template-option span{display:grid;gap:.6rem;min-height:9rem;padding:1rem 1rem 1rem 3.2rem}.template-option strong{font-size:1.2rem;text-transform:none}.template-option small{font-size:.9rem;font-weight:400;line-height:1.5;letter-spacing:0;text-transform:none}.template-option:has(input:checked){background:var(--sage)}.form-submit{display:flex;justify-content:space-between;align-items:center;gap:2rem}.document-panel{max-width:940px;margin:clamp(2rem,5vw,5rem) auto;background:var(--paper);box-shadow:0 20px 60px rgba(25,26,28,.09)}.document{padding:clamp(1.5rem,6vw,6rem)}.agreement-title{padding-bottom:3rem;margin-bottom:3rem;border-bottom:2px solid}.agreement-title h1{max-width:13ch;margin:.5rem 0;font-size:clamp(2.5rem,5vw,5.2rem)}.agreement-kicker{font-size:.75rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase}.document section{padding:2rem 0;border-bottom:1px solid var(--line)}.document section h2{margin:0 0 1rem;font-size:clamp(1.55rem,2.5vw,2.35rem);line-height:1.1}.document section p{max-width:48rem;line-height:1.72}.record-grid{display:grid;grid-template-columns:repeat(3,1fr);margin:2rem 0;border:1px solid;background:var(--paper)}.record-grid div{padding:1.2rem;border-right:1px solid var(--line)}.record-grid dt{font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.record-grid dd{margin:.7rem 0 0}.sign-form{display:grid;grid-template-columns:.75fr 1.25fr;gap:clamp(2rem,7vw,7rem);padding:clamp(1.5rem,5vw,4rem);border:1px solid;background:var(--sage)}.sign-fields{display:grid;gap:1.2rem}.sign-fields>label:not(.check){display:grid;gap:.5rem;font-size:.78rem;font-weight:700;text-transform:uppercase}.check{display:grid;grid-template-columns:auto 1fr;gap:.7rem;line-height:1.5}.check input{width:1.2rem;height:1.2rem}.login-wrap{min-height:100svh;display:grid;align-items:center;padding:clamp(1rem,4vw,3rem)}.login-card{width:min(100%,610px);padding:clamp(1.75rem,5vw,3.5rem);border:1px solid var(--ink);background:var(--paper);box-shadow:14px 14px 0 var(--sage)}.login-card>.brand{display:block;width:112px;height:auto;margin:0 0 clamp(2.5rem,7vw,4.5rem)}.login-card .hero-title{max-width:8ch;font-size:clamp(2.8rem,8vw,4.8rem)}.login-form{display:grid;gap:1rem;margin-top:2rem}.login-form label{display:grid;gap:.5rem;font-weight:700}.password-form{max-width:620px}.audit{max-width:940px;margin:3rem auto;padding:clamp(1.5rem,5vw,4rem);border:1px solid}.audit li{display:grid;grid-template-columns:1fr 1fr 1fr;gap:1rem;padding:1rem 0;border-bottom:1px solid var(--line)}.fine{font-size:.78rem;line-height:1.5;overflow-wrap:anywhere}.empty{padding:3rem 0}
@media(max-width:760px){.admin-header,.form-submit{align-items:flex-start;flex-direction:column}.form-grid,.template-grid,.sign-form,.record-grid{grid-template-columns:1fr}.record-grid div{border-right:0;border-bottom:1px solid var(--line)}.audit li{grid-template-columns:1fr}.contract-link-actions{width:100%}}
@media print{.admin-header,.actions,.sign-form{display:none!important}.shell{padding:0}.document-panel{box-shadow:none;margin:0;max-width:none}.document{padding:0}}
