:root{color:#172019;font-synthesis:none;background:#f2efe7;font-family:PingFang SC,Noto Sans CJK SC,system-ui,sans-serif}*{box-sizing:border-box}body{margin:0}button,input,textarea{font:inherit}button{color:#172019;cursor:pointer;background:#fff;border:1px solid #9a9c93;border-radius:3px;min-height:44px;padding:10px 16px}.primary{color:#fff;background:#172019;border-color:#172019}.danger{color:#8c2f24;border-color:#cda9a3}.brand-mark{letter-spacing:.16em;margin:0;font-weight:700}.login-page{place-items:center;min-height:100dvh;padding:24px;display:grid}.login-card{background:#fff;width:min(100%,420px);padding:38px;box-shadow:0 20px 70px #2530261a}.login-card h1{margin:12px 0 30px;font-size:34px}.login-card label,.editor-panel label,.contact-editor label{color:#575e57;gap:8px;margin:0 0 18px;display:grid}.login-card input,.editor-panel input,.editor-panel textarea,.contact-editor input{color:#172019;background:#faf9f5;border:1px solid #b8bbb3;width:100%;min-height:48px;padding:11px 13px}.login-card .primary{width:100%}.error{color:#922f22}.admin-shell{min-height:100dvh}.admin-header{color:#fff;background:#172019;justify-content:space-between;align-items:center;height:78px;padding:0 clamp(18px,4vw,56px);display:flex}.admin-header button{color:#fff;background:0 0;border-color:#7c837e}.admin-nav{background:#e5e1d7;gap:6px;padding:18px clamp(18px,4vw,56px);display:flex;overflow:auto}.admin-nav button{white-space:nowrap;background:0 0;border-color:#0000}.admin-nav button.active{background:#fff;border-color:#bfc0b8}.admin-content{padding:0 clamp(18px,4vw,56px) 50px}.editor-layout{background:#fff;grid-template-columns:minmax(220px,30%) 1fr;min-height:calc(100dvh - 150px);display:grid}.record-list{border-right:1px solid #deddd6;flex-direction:column;gap:8px;max-height:calc(100dvh - 150px);padding:22px;display:flex;overflow:auto}.record-list strong{margin-bottom:12px}.record-list button{text-align:left;background:0 0;border-color:#0000}.record-list button.active{background:#efede6;border-color:#d6d3ca}.record-list small{color:#7a7e77;margin-top:5px;display:block}.editor-panel{max-width:900px;padding:clamp(24px,5vw,64px)}.editor-panel h2{margin:6px 0 28px;font-size:36px}.editor-panel textarea{resize:vertical}.eyebrow{letter-spacing:.15em;color:#70756e}.actions{flex-wrap:wrap;gap:10px;display:flex}.status-message{background:#edf1eb;border-left:3px solid #566657;padding:14px 16px}.confirm-box{background:#f5f3ed;border:1px solid #a9aca3;margin-top:20px;padding:20px}.check{align-items:center;gap:10px;display:flex!important}.check input{width:22px!important;min-height:22px!important}.contact-editor{background:#fff;padding:clamp(24px,5vw,64px)}.contact-editor-grid{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}.contact-editor article{border:1px solid #d8d6ce;padding:20px}.contact-editor img{aspect-ratio:1;object-fit:contain;background:#fff;width:min(100%,260px);margin:0 auto 20px;display:block}.file-button input{background:#fff;padding:8px}.contact-editor .primary{width:100%}@media (width<=760px){.admin-header{height:68px}.admin-content{padding:0}.editor-layout{display:block}.record-list{border-bottom:1px solid #deddd6;border-right:0;max-height:230px}.editor-panel{padding:28px 18px 50px}.editor-panel h2{font-size:28px}.contact-editor-grid{grid-template-columns:1fr}.contact-editor{padding:28px 18px 50px}.login-card{padding:28px 22px}}.header-actions{gap:8px;display:flex}.modal-backdrop{z-index:50;background:#1118;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.history-dialog{color:#172019;background:#fff;gap:12px;width:min(100%,560px);max-height:85dvh;padding:26px;display:grid;overflow:auto}.history-dialog label{gap:8px;display:grid}.history-dialog input{min-height:48px;padding:10px}.history-dialog pre{white-space:pre-wrap;word-break:break-word;background:#f3f1eb;padding:14px;font-size:12px}@media (width<=520px){.admin-header{height:auto;min-height:68px;padding-block:10px}.header-actions{gap:4px}.header-actions button{padding-inline:10px}}.record-list button{white-space:normal;overflow-wrap:anywhere;min-width:0;line-height:1.45}.record-list small{white-space:normal;overflow-wrap:anywhere;line-height:1.4}.list-tools{grid-template-columns:1fr 1fr;gap:6px;display:grid}.list-tools button{text-align:center;padding-inline:8px}.quote-date-list button{font-size:15px}@media (width<=760px){.quote-date-list button{font-size:14px}}
