:root{--ink:#263f38;--muted:#5d7167;--line:#dce4d8;--paper:#f5f7f1;--green:#315a49}
*{box-sizing:border-box}
body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.55 system-ui,"PingFang SC","Microsoft YaHei",sans-serif}
header{display:flex;align-items:center;gap:16px;flex-wrap:wrap;padding:14px clamp(16px,5vw,48px);background:#fff;border-bottom:1px solid var(--line)}
header>a{font-size:20px;font-weight:720;text-decoration:none}
header form{margin-left:auto}
nav{display:flex;gap:10px}
a{color:var(--green)}
nav a{padding:5px 8px;text-decoration:none;border-radius:5px}
nav a[aria-current]{background:#e7efe4;font-weight:650}
main{width:min(100% - 32px,1020px);margin:32px auto 54px}
main.narrow{max-width:440px}
h1{margin:0 0 8px;font-size:clamp(25px,4vw,34px)}
h2{margin:0 0 15px;font-size:18px}
p{margin:0 0 14px;color:var(--muted)}
.card{padding:20px;margin:16px 0;border:1px solid var(--line);border-radius:12px;background:#fff}
.entry.card{max-width:400px;margin:clamp(28px,10vh,108px) auto 32px;padding:clamp(18px,5vw,28px);border-radius:16px}
.entry-brand{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:14px;font-weight:600}
.entry-brand span{color:#967838;font-size:18px;line-height:1}
.entry h1{margin:8px 0 19px;font-size:28px;line-height:1.25}
.entry-field{display:grid;gap:8px}
.entry-phone{display:grid;grid-template-columns:76px minmax(0,1fr);gap:8px}
.entry-form input,.entry-form select,.entry-form button[type="submit"]{min-height:44px;font-size:16px}
.entry-links{display:flex;justify-content:space-between;flex-wrap:wrap;gap:6px 12px;margin:9px 0 13px;font-size:14px}
.entry-links a{display:inline-flex;align-items:center;min-height:40px;text-underline-offset:3px}
.entry-privacy{border-top:1px solid var(--line);padding-top:12px;margin:0}
.form,.form label{display:grid;gap:8px}
.form{gap:14px}
.form.grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,160px),1fr));align-items:end}
.form label{font-size:14px;font-weight:600}
input,select,button{font:inherit}
input,select{padding:9px 10px;min-width:0;width:100%;border:1px solid #acbeb1;border-radius:6px;background:#fbfcf9;color:var(--ink)}
button{min-height:40px;border:1px solid var(--green);border-radius:6px;padding:7px 12px;cursor:pointer;background:var(--green);color:#fff;font-weight:600;white-space:nowrap}
button.secondary{background:#fff;color:var(--green)}
.password-label{display:grid;gap:8px}
.password-field{position:relative}
.password-field input{padding-right:50px}
.password-toggle{position:absolute;right:1px;top:1px;bottom:1px;min-height:0;width:44px;padding:0;border:0;background:transparent;color:var(--green)}
.password-toggle svg{vertical-align:middle}
.password-toggle[aria-pressed="false"] .eye-slash{display:none}
:focus-visible{outline:2px solid #466c59;outline-offset:3px}
.fine,small{font-size:13px;color:var(--muted)}
.notice{padding:10px 12px;border-radius:6px;background:#f7edda;color:#6b4d23}
.issued output{display:block;font-size:34px;letter-spacing:.14em;font-weight:700;margin:0 0 9px}
.issued p:last-child{margin:8px 0 0}
.table-scroll{overflow:auto}
table{border-collapse:collapse;width:100%;text-align:left;font-size:14px}
th,td{padding:10px 12px;border-bottom:1px solid var(--line);white-space:nowrap}
th{color:var(--muted)}
.actions,.inline{display:flex;align-items:flex-end;gap:8px}
.extension-days{display:grid;gap:4px;color:var(--muted);font-size:13px}
.extension-days input{width:72px;font-size:16px}

.layout-admin-row{display:flex;flex-wrap:wrap;gap:12px;margin:12px 0;padding:10px 14px;border:1px solid #dbe4d8;border-radius:8px}
.layout-admin-row legend{padding:0 6px;font-weight:650}
.layout-admin-row label{min-width:96px;flex:1}

.template-subnav,.template-filter,.template-pages{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px}
.template-subnav{margin:0 0 18px}
.template-subnav a,.template-pages a,.template-filter a{padding:8px 12px;border-radius:5px}
.template-subnav a[aria-current="page"]{background:#e6eee4;font-weight:700}
.form.template-filter{display:flex;margin-bottom:16px}
.template-filter label{min-width:140px}
.template-pages{margin-top:14px;align-items:center;color:var(--muted);font-size:14px}
.template-description{display:block;margin-top:4px;white-space:normal}
.template-user-results{list-style:none;padding:0;margin:0}
.template-user-results li{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--line)}
.template-choices{display:grid;gap:10px;border:1px solid var(--line);border-radius:8px;padding:12px}
.template-choices .template-choice{display:flex;align-items:center;gap:10px}
.template-choice input{width:18px;height:18px;margin:0;accent-color:#315a49}
.template-choice small{display:block}
@media(max-width:460px){.template-filter label{flex:1 1 100%}.template-pages{gap:4px}}
