:root{--ink:#173335;--green:#12695e;--line:#d7e2df;--muted:#607671}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:#f3f7f6;font:15px/1.6 'Microsoft YaHei','Segoe UI',sans-serif}header{padding:24px 4vw;background:var(--green);color:white}header h1{font-size:26px;margin:5px 0}header p{margin:0}header small{letter-spacing:2px}.banner{padding:12px 4vw;background:#e6eee3;font-size:13px}main{max-width:1550px;margin:auto;padding:24px 4vw}nav,.bar{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.bar{margin-bottom:15px}.bar h2{margin-right:auto}button,input,select,textarea{font:inherit}button{cursor:pointer;padding:9px 14px;border:1px solid var(--line);border-radius:6px;background:white;color:var(--ink)}button:hover{border-color:var(--green)}button.primary,button.active{background:var(--green);color:white}button:disabled{opacity:.5}input,textarea,select{width:100%;padding:9px;border:1px solid var(--line);border-radius:5px;background:white;color:var(--ink)}textarea{min-height:90px;resize:vertical}label{display:block;font-size:13px;color:var(--muted);margin:12px 0}label>input,label>textarea,label>select{margin-top:5px}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #c7a053;outline-offset:2px}.columns{display:grid;grid-template-columns:220px minmax(250px,1fr) 290px;gap:18px}.twocol{display:grid;grid-template-columns:1fr 1fr;gap:18px}.panel{background:white;border:1px solid var(--line);padding:20px;border-radius:9px;min-width:0}h2{font-size:20px}h3{font-size:16px;margin:0 0 15px}.hint,small{font-size:12px;color:var(--muted)}header small{color:inherit}.lead{width:100%;text-align:left;margin:6px 0}.lead.selected{border-left:4px solid var(--green)}.lead small{display:block}.msg{padding:12px;border-radius:7px;background:#f0f4f3;margin:10px 0;overflow-wrap:anywhere}.msg.out{background:#e7f3ec}.msg small{display:block}.msg button{margin-top:10px;font-size:12px}.tag{display:inline-block;font-size:12px;color:var(--green);background:#e7f3ec;padding:3px 8px;border-radius:4px}.task{display:flex;align-items:flex-start;gap:7px}.task input{width:auto;margin-top:5px}.entry{font-size:12px;padding:10px 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}hr{border:0;border-top:1px solid var(--line);margin:20px 0}#notice{min-height:24px;color:var(--green)}table{width:100%;border-collapse:collapse}td,th{padding:12px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line)}[hidden]{display:none!important}@media(max-width:1100px){.columns{grid-template-columns:220px 1fr}.columns>aside:last-child{grid-column:1/-1}}@media(max-width:650px){main{padding:16px}.columns,.twocol{grid-template-columns:1fr}.columns>aside:last-child{grid-column:auto}.panel{padding:16px}td,th{padding:7px;font-size:12px}nav button{flex:1}}

.login-panel{max-width:440px;margin:36px auto;padding:28px}#login-error{color:#9f3030}

.password-field{position:relative;margin-top:-7px;margin-bottom:14px}.password-field input{padding-right:52px}.password-toggle{position:absolute;right:2px;top:2px;bottom:2px;width:44px;display:flex;align-items:center;justify-content:center;border:0;background:transparent;padding:0}.password-toggle svg{fill:none;stroke:currentColor;stroke-width:1.7}.password-toggle .eye-slash{display:none}.password-toggle[aria-pressed="true"] .eye-slash{display:block}
