:root{--bg:#f5f2e9;--ink:#172821;--dark:#173c2b;--accent:#dcaa24;--line:#dfdfd5;--danger:#9e352b}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.45 system-ui,-apple-system,'Segoe UI',sans-serif}.wrap{max-width:980px;margin:auto;padding:16px}header{background:var(--dark);color:white}header .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.brand{display:flex;align-items:center;gap:10px;font-weight:850;font-size:1.15rem;color:white;text-decoration:none}.brand img{width:44px;height:44px}nav{display:flex;gap:14px;flex-wrap:wrap}nav a{color:white;text-decoration:none;font-weight:650}h1{font-size:clamp(1.5rem,5vw,2.2rem)}h2{margin:0 0 12px;font-size:1.25rem}small{font-size:.75rem;color:#687a70}.panel{background:white;border:1px solid var(--line);border-radius:15px;padding:20px;margin:18px 0;box-shadow:0 3px 10px #00000009}.columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:14px}.columns .panel{margin:0}label{display:block;font-weight:650;margin:12px 0}input,select{display:block;width:100%;margin-top:5px;border:1px solid #b4c0b9;border-radius:9px;padding:12px;font:inherit;background:white;min-height:48px}button,.button{display:inline-block;border:0;border-radius:9px;background:var(--accent);color:#172821;padding:13px 18px;font:inherit;font-weight:800;cursor:pointer;min-height:46px;text-decoration:none}button:disabled{opacity:.5;cursor:not-allowed}.danger{background:var(--danger);color:white}.notice{background:#e7f4dc;border:1px solid #a0c18b;border-radius:9px;padding:12px;margin:12px 0}.error{background:#ffe8e4;border:1px solid #cb7b72;border-radius:9px;padding:12px;margin:12px 0}.control{display:flex;align-items:center;justify-content:space-between;gap:10px;border-bottom:1px solid var(--line);padding:13px 0}.control strong{display:block;font-size:.85rem}.subtle{color:#666}table{width:100%;border-collapse:collapse}td,th{padding:12px 6px;border-bottom:1px solid var(--line);text-align:left}td:last-child,th:last-child{text-align:right}footer{font-size:.8rem;color:#66796d;margin:24px auto!important}@media(max-width:450px){header .wrap{display:block}nav{margin-top:10px;font-size:.88rem;gap:10px}.panel{padding:15px}.control{align-items:start;flex-direction:column}.control button{width:100%}button{width:100%}}
