
:root{--brand:#e3231f;--primary:#4a7ba6;--primary-dark:#3c6589;--primary-soft:rgba(74,123,166,.16);--danger:#c0675f;--ink:#16181d;--line:#e7e7e9;--bg:#f5f5f6;--muted:#6b6f76;}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;}
html,body{margin:0;}
body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;}
header{background:#000;color:#fff;padding:14px 18px;position:sticky;top:0;z-index:5;}
header .wrap{max-width:680px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:12px;}
.brandform{margin:0;}
.brand{font-weight:800;letter-spacing:.06em;font-size:18px;color:#fff;background:none;border:0;padding:0;cursor:pointer;}
.brand b{color:var(--brand);}
.brand:hover,.brand:active,.brand:focus{background:none;}
.logout{color:#cfd1d4;font-size:13px;font-weight:600;text-decoration:none;border:1px solid #3a3a3a;padding:7px 12px;border-radius:9px;white-space:nowrap;}
.logout:hover{color:#fff;border-color:#666;}
main{max-width:680px;margin:0 auto;padding:18px 14px 30px;}
footer{max-width:680px;margin:0 auto;padding:8px 14px 50px;color:#aab;font-size:12px;text-align:center;}
footer a{color:inherit;font-size:inherit;text-decoration:underline;}
footer a:hover{color:var(--primary);}
.card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px;box-shadow:0 1px 3px rgba(0,0,0,.05);}
.card.narrow{max-width:460px;margin:0 auto;}
h2{font-size:20px;margin:0 0 4px;}
.sub{color:var(--muted);font-size:14px;margin:0 0 18px;}
label{display:block;font-weight:700;margin:18px 0 4px;font-size:14px;}
.hint{color:var(--muted);font-size:12.5px;margin:0 0 8px;line-height:1.45;}
.req{color:var(--brand);font-weight:700;}
.opt{color:#9aa0a8;font-weight:400;font-size:12px;}
.cur{font-size:12.5px;color:#8a6d00;background:#fff7df;border:1px solid #f0e3b0;border-radius:8px;padding:8px 10px;margin:0 0 8px;overflow-wrap:anywhere;word-break:break-word;}
.cur span{font-weight:600;}
input[type=text],input[type=email],input[type=password],input[type=number],input[type=url],textarea{width:100%;padding:12px 13px;border:1px solid #cfd1d4;border-radius:12px;font-size:16px;outline:none;font-family:inherit;background:#fff;}
input:focus,textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft);}
textarea{resize:vertical;line-height:1.5;}
.urlfield{margin-top:8px;font-size:13px;}
input.file{width:100%;padding:12px;border:1.5px dashed #c7c9cc;border-radius:12px;background:#fafafa;font-size:14px;}
button{background:var(--primary);color:#fff;border:0;border-radius:12px;padding:13px 22px;font-size:15px;font-weight:700;cursor:pointer;}
button:hover{background:var(--primary-dark);}
button:active{transform:translateY(1px);}
button.ghost{background:#eceef0;color:var(--ink);}
button.ghost:hover{background:#e2e4e7;}
button.danger{background:var(--danger);}
button.danger:hover{background:#a9554e;}
.actions{display:flex;gap:10px;margin-top:22px;flex-wrap:wrap;}
.list{display:flex;flex-direction:column;gap:10px;}
.rowform,.backform,.addnew{margin:0;}
.rowbtn{width:100%;background:#fff;color:var(--ink);border:1px solid var(--line);border-radius:14px;padding:16px;font-weight:600;font-size:15px;display:flex;justify-content:space-between;align-items:center;text-align:left;}
.rowbtn:hover,.rowbtn:active,.rowbtn:focus{border-color:var(--primary);background:#f4f8fb;color:var(--ink);}
.rl{display:flex;align-items:center;gap:11px;min-width:0;}
.mi{width:1.15em;height:1.15em;flex:0 0 auto;}
.toolbtn{width:100%;background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px;display:flex;align-items:center;gap:14px;color:var(--ink);font-weight:600;}
.ic2{display:flex;color:inherit;flex:0 0 auto;}
.ic2 .mi{width:23px;height:23px;}
.toolbtn:hover,.toolbtn:active,.toolbtn:focus{border-color:var(--primary);background:#f4f8fb;color:var(--ink);}
.toolbtn .t{display:flex;flex-direction:column;text-align:left;flex:1;min-width:0;}
.toolbtn .t small{color:var(--muted);font-weight:400;font-size:12.5px;margin-top:2px;}
.toolbtn.disabled{opacity:.5;cursor:default;}
.arrow{color:var(--primary);font-size:22px;margin-left:10px;}
.items{display:flex;flex-direction:column;gap:10px;margin-bottom:18px;}
.item{display:flex;justify-content:space-between;align-items:center;gap:12px;border:1px solid var(--line);border-radius:14px;padding:13px 15px;}
.itemtext{display:flex;flex-direction:column;min-width:0;}
.itemtext strong{overflow:hidden;text-overflow:ellipsis;}
.itemtext span{color:var(--muted);font-size:13px;margin-top:2px;}
.itemact{display:flex;gap:8px;flex-shrink:0;flex-wrap:wrap;justify-content:flex-end;}
button.mini{padding:9px 14px;font-size:13px;}
button.add{background:#fff;color:var(--primary);border:1.5px dashed var(--primary);width:100%;}
.viewpage{display:block;margin-top:14px;text-align:center;font-size:12.5px;font-weight:400;color:var(--muted);text-decoration:none;}
.viewpage:hover{color:var(--primary);text-decoration:underline;}
.linkback{background:#f1f2f4;color:var(--ink);padding:9px 15px;border-radius:10px;font-weight:600;font-size:14px;display:inline-block;margin-bottom:16px;}
.linkback:hover{background:#e6e7ea;}
.err{color:var(--danger);font-size:14px;margin:8px 0;}
.signin{margin-top:22px;width:100%;}
.banner{padding:13px 16px;border-radius:12px;margin-bottom:16px;font-weight:600;font-size:14px;}
.banner.good{background:#e7f6e7;color:#1c7a1c;border:1px solid #bfe6bf;}
.banner.bad{background:#fdecec;color:#c41a16;border:1px solid #f4c4c2;}
@media (max-width:480px){.card{padding:18px;}.item{flex-direction:column;align-items:stretch;}.itemact{justify-content:flex-end;}.actions button{flex:1;}}
