*{box-sizing:border-box}body{color:#1f2430;background:#f5f6f8;margin:0;font-family:Hiragino Sans,Noto Sans JP,system-ui,sans-serif;font-size:14px}a{color:#0b7a3e;text-decoration:none}button{cursor:pointer;background:#fff;border:1px solid #cfd4dc;border-radius:6px;padding:6px 12px;font-size:13px}button.primary{color:#fff;background:#06c755;border-color:#06c755}button.danger{color:#c0392b;background:#fff2f0;border-color:#e0b4ae}button:disabled{opacity:.5;cursor:default}input,select,textarea{border:1px solid #cfd4dc;border-radius:6px;padding:6px 8px;font-family:inherit;font-size:13px}textarea.json{width:100%;font-family:ui-monospace,monospace;font-size:12px}.layout{min-height:100vh;display:flex}.sidebar{color:#dfe8e2;background:#10331f;flex-shrink:0;width:210px;padding:16px 0}.sidebar h1{color:#fff;margin:0;padding:0 16px 12px;font-size:15px}.sidebar nav a{color:#cdd8d0;padding:9px 16px;font-size:13px;display:block}.sidebar nav a.active{color:#fff;background:#06c755}.main{flex:1;max-width:1200px;padding:20px 24px}.main:has(>.page-wide){max-width:none}.main h2{margin:0 0 14px;font-size:18px}.card{background:#fff;border:1px solid #e3e6ea;border-radius:10px;margin-bottom:14px;padding:14px 16px}table.list{border-collapse:collapse;background:#fff;width:100%}table.list th,table.list td{text-align:left;vertical-align:top;border-bottom:1px solid #eceff2;padding:8px 10px}table.list th{color:#5a6472;background:#f4f6f8;font-size:12px}.tag{color:#0b7a3e;background:#e8f6ee;border-radius:10px;margin:1px 3px 1px 0;padding:1px 8px;font-size:11px;display:inline-block}.muted{color:#8a93a0;font-size:12px}.error{color:#c0392b;margin:8px 0;font-size:13px}.row{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:10px;display:flex}.grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;display:grid}.miniapp{background:#fff;max-width:480px;min-height:100vh;margin:0 auto;padding:20px 16px 40px}.miniapp h1{font-size:18px}.miniapp .field{margin-bottom:14px}.miniapp label{margin-bottom:4px;font-size:13px;font-weight:600;display:block}.miniapp label .req{color:#c0392b;margin-left:4px;font-size:11px}.miniapp input,.miniapp select,.miniapp textarea{width:100%;padding:10px;font-size:16px}.miniapp .submit{color:#fff;background:#06c755;border:none;border-radius:8px;width:100%;margin-top:8px;padding:13px;font-size:16px}.slot-option{border:1px solid #cfd4dc;border-radius:8px;margin-bottom:8px;padding:10px;display:block}.slot-option.selected{background:#e8f6ee;border-color:#06c755}
